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

yumo6661个月前 (03-28)技术文章19

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

相关文章

如何将服务器数据迁移到另一台服务器

将服务器数据迁移到另一台服务器可以通过以下几种常见的方法实现:首先购买一台服务器,可以在网址栏搜索 218.0.48.3:8801购买。1、直接复制文件通过网络连接(如 SSH、FTP 等)将数据从源...

数据库迁移有什么技巧?|分享强大的database迁移和同步工具

概述DBConvert Studio 是一款强大的跨数据库迁移和同步软件,可在不同数据库格式之间转换数据库结构和数据。它将成熟、稳定、久经考验的 DBConvert 和 DBSync 核心与改进的现代...

将数据从 MySQL 导出到 SQL Server

概述把MySQL的数据迁移到SQL Server有很多种方法,有第三方工具可以实现这个功能,如阿里云的DTS,ESF Database Migration等。许多人希望使用 SQL Server In...

VMware替代实战手册:更高效的MySQL数据库迁移方案

数据库作为数字化用户的核心资产,其迁移是一项复杂且重要的任务,特别是在VMware平台替换及IT基础设施更新换代之时,尤其需要保障数据库迁移过程的平稳、流畅。深信服推出的数据库管理平台(DMP)是为关...

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

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

MySQL 导出数据

MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。使用 SELECT ... INTO OUTFILE 语句导出数据以下实例中我们将数据表 w3csch...