跳转至

附:数据迁移

MySQL数据迁移

在使用相关数据时由于数据量很大(1

MySQL 数据存放在 C:\ProgramData\MySQL\MySQL Server 8.0\Data (这是一个隐藏文件夹)。我们可以通过修改配置文件,让 MySQL “搬家”到 E 盘,同时完整保留你的所有数据库。


迁移前必读⚠️

  • 备份: 尽管这个方法很安全,但操作前建议将原来的 Data 文件夹手动复制一份到 D 盘或 U 盘作为备份。
  • 权限: MySQL 对文件夹权限要求极严,步骤 4 非常关键,否则服务将无法启动。

迁移步骤

1. 停止 MySQL 服务

必须先停止服务,否则文件被占用无法移动。

  • 按下 Win + R,输入 services.msc 并回车。
  • 找到 MySQL80(或类似名称),右键点击 “停止”

2. 复制数据到 E 盘

  • 在 E 盘创建新目录,例如 E:\MySQL_Data
  • 找到原数据路径:C:\ProgramData\MySQL\MySQL Server 8.0\Data(注意:ProgramData 是隐藏文件夹,需开启“显示隐藏项目”)。
  • 将该 Data 文件夹完整复制E:\MySQL_Data 下。
  • 搬家后的路径应为:E:\MySQL_Data\Data

3. 修改配置文件 my.ini

告诉 MySQL 以后去哪里读数据。

  • C:\ProgramData\MySQL\MySQL Server 8.0\ 目录下找到 my.ini 文件。

  • 以管理员身份用记事本打开它。

  • 搜索关键字 datadir,找到如下行:

datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data

  • 将其修改为你的新路径(注意使用正斜杠 / 或双反斜杠 \):

datadir=E:/MySQL_Data/Data

  • 保存并关闭。

4. 设置文件夹权限(最关键)

如果忽略这一步,MySQL 会报错“拒绝访问”。

  • 右键点击 E 盘新创建的 MySQL_Data 文件夹 -> 属性 -> 安全
  • 点击 编辑 -> 添加
  • 输入 NETWORK SERVICE,点击确定。
  • 在权限列表中勾选 “完全控制”,点击确定保存。

5. 重启服务并测试

  • 回到“服务”窗口,找到 MySQL80,右键点击 “启动”
  • 打开你的数据库工具(如 Navicat 或 Kettle),连接并确认数据是否都在。

验证与扫尾

如果一切正常,你会发现数据依然可以访问,且以后产生的新数据都会存入 E 盘。此时,你就可以放心删除 C:\ProgramData\MySQL\MySQL Server 8.0\Data 下的内容来释放那 14.6GB 的 C 盘空间了。