Windows下MySQL8.0数据库文件路径修改和数据转移
什么情况需要修改MySQL数据文件路径?
MySql在安装之初,默认的安装位置与数据保存位置都是在C盘,时间久了,C盘就会爆满,因此需要修改MySql数据保存位置。
本例从C盘转移到D盘。
操作步骤:
1、 备份数据库。
2、 找到MySQL数据文件Data的路径,MySQL8.0的默认安装的Data路径为C:\ProgramData\MySQL\MySQL Server 8.0\Data。也可以通过命令查询:Show Variables LIKE “Datadir”。
如果过没有修改则可在C:\ProgramData\MySQL\MySQL Server 8.0路径下可以找到my.ini配置文件。在my.ini中可以找到Data的路径:
3、 停止MySQL服务。
4、 在需要转移的目标盘下新建目录,如D盘下新建MySQLData目录,然后将C:\ProgramData\下的MySQL文件夹复制到目标目录下。
然后将源目录下的MySQL备份后删除或者将MySQL文件夹名改掉。
5、 修改目标目录下的my.ini配置文件中的datadir的路径,即转移后新路径:
6、 修改服务启动路径配置:
先查看服务启动的配置文件路径,如果没修改应该还是默认的C盘C:\ProgramData\MySQL\MySQL Server 8.0\
因为我们前面已经把原C盘ProgramData下的MySQL删掉或重命名,所以默认配置文件路径会找不到,服务将会无法启动。修改路径的方法:
a. regedit打开注册表。
b.
HKEY_LOCAL_MACHINE----SYSTEM----CurrentControlSet----Services----mysql,修改ImagePath为当前路径。
PS:如果我们只是把C:\ProgramData\MySQL\MySQL Server 8.0\下的Data转移到其他盘,其他的内容还是保留在C盘(第4步中不是将MySQL全部转移到新目录,只是将MySQL下的Data转移到新目录,保留C盘的MySQL目录),即my.ini还是在原路径下,就不需要修改服务启动路径。
7、 启动MySQL服务器,如果服务能正常启动,我们可以通过第2步的方法查看datadir的路径是否为新的路径。
8、 如果启动失败,报以下错误:
我们做以下检查:
A、 服务启动路径是否正确,参考上面第6步。
B、 检查服务启动配置文件my.ini里配置的datadir是否正确,另外my.ini保存编码是否为ANSI。
C、 检查转移目标文件夹的权限,本例中的D盘MySQLData文件夹的权限。需要添加NETWORK SERVER用户组。
添加方法:点击安全选项卡中的编辑按钮,
进去后点击添加
进去后点击高级
进去后在点击立即查找,在搜索结果中
选中NETWORK SERVICE,然后一直点确定
最后,进入权限窗口,给NETWORK SERVICE勾选完全控制,一直点击确定,完成。