最近在windows服务器上安装了一个mysql,发现数据文件只能装在c盘,我那可怜的c盘只有50G,数据库放上去,估计以后系统就别想跑了,所以需要把mysql的数据放在D盘。但是在网上找了一圈中文资料,感觉都有问题,所以到英文网上找了一下,终于找到正确的方法,现在把方法搬过来,共享之。

一、MySql的默认数据存储路径

mysql的数据文件默认存放在C:\ProgramData\MySQL\MySQL Server 8.0\Data下面,该路径是通过配置文件my.ini的配置项datadir配置,my.ini的路径为:C:\ProgramData\MySQL\MySQL Server 8.0\my.ini。

所以迁移的思路就是将数据文件夹整个复制到其他路径,如:D:\MySql\Data下面,复制之后修改my.ini的配置项,再重启MySql服务。

二、MySQL数据文件迁移步骤

1.停止mySql服务(在windows服务管理中,停止MySql8.0服务,不同版本服务名可能不同)

2.将C:\ProgramData\MySQL\MySQL Server 8.0\Data文件夹复制到你要迁移的路径,这里假设为:D:\MySql\Data。

3.设置目标路径的权限(D:\MySql\Data),添加NETWORK_SERVICE用户为完全控制,不懂就把所有权限都沟上。

4.修改my.ini,设置datadir为新的数据文件夹的路径,这里为 datadir= "D:\MySQL\Data"。

6.启动mysql服务。

三、注意事项

1.需要设置目标路径的权限,如果不设置,MySql服务无法启动,服务是以NETWORK_SERVICE用户运行的,不设置文件夹权限会导致服务无法访问该文件夹。

2.检查my.ini的编码格式,必须为ANSI格式。有些文本编辑器保存时会把编码格式设置为utf-8,导致mysql无法读取。建议使用notepad++,不要用windows自带的记事本,记事本会修改编码格式。

四、原始英文文章路径

MySQL - Moving Data Folder on Windows - Michael Maw

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐