Windows下MySQL8.0数据库文件路径修改和数据转移

yumo66610个月前 (03-28)技术文章124

什么情况需要修改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勾选完全控制,一直点击确定,完成。

相关文章

MySQL数据库如何快速自动化同步?

随着业务的增长和用户量的增加,数据库的可用性、稳定性以及扩展性变得愈加重要。数据库同步是一种重要的技术,旨在确保在多台服务器或数据节点之间,数据的一致性和实时性。特别是在分布式系统中,MySQL数据库...

从SSH输入命令备份/还原恢复MySQL数据库教程

有时候你需要把你的网站从一个服务器迁移到另一个服务器,在迁移网站的同时,你也需要移动网站的数据库。不过一些网站可能有GB级别大小的数据库(2GB或更大),如果通过PHPMyAdmin导出或导入非常难。...

一次几乎不可能的数据库迁移

最初,我们把一个文件当作数据库,将数据转化为 JSON 大对象写入进去,后来,它的速度越来越慢,我们决定进行数据库的迁移,这个过程中我们遇到了一些问题和障碍,但最终我们成功完成了这一次不太可能的数据库...

MySQL中间件集群平滑迁移的初步方案

最近有一套MySQL集群环境的服务器即将过保,为了避免后续带来的一些额外问题,需要提前考虑服务器的迁移计划,但是现在的线上业务,申请维护时间是比较困难的,而且在线变更的容忍时间是很短暂的,一般在业务...