如何将 MySQL 数据库从一个硬盘移动到另一个硬盘?

问题描述 投票:0回答:4

我在Windows7上使用MySQL 5.5和MySQLWorkbench。我已在 C: 驱动器上成功创建数据库,但我想将其移至 E: 驱动器。我停止了 mysqld 守护进程并编辑了 my.ini 文件,将 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 更改为 datadir="E:/MySQL/data/"。我将数据从 C: 位置复制到 E: 位置。 我可以启动mysqld进程,但是我创建的数据库没有出现。有人可以解释我做错了什么吗?

mysql mysql-workbench
4个回答
0
投票

基本上您想将旧目录中的所有内容复制到新目录中。确保在执行此操作时不要复制二进制日志(如果有的话,它们看起来像 mysql-bin.001 等,并且也不复制 mysql-bin.index 因为它包含对旧二进制日志的真实路径引用) 。完成此操作后,您应该能够重新启动 mysql 守护程序并登录以查看数据库。

PS:未经测试,但应该可以工作。


0
投票

当我尝试移动数据库时,遇到了 Windows 对新数据文件夹与原始数据文件夹没有相同权限的问题。您可以通过转到文件夹的属性然后选择安全选项卡来检查正确的用户是否有权访问新文件夹。


0
投票

因为我希望我的 innodb 数据库位于另一个分区,所以我从 MySQL Workbench 停止了 MySQL。我将 innodb 数据库 ibdata1 以及 MySQL 在 C:\ProgramData\MySQL\ 文件夹中自动创建的 2 个日志文件复制到 E: 分区上的新文件夹中。我将以下内容添加到 my.ini 中:

innodb_data_home_dir = "E:/MySQL Data"

现在,当我启动数据库时,所有更改都会对 E: 驱动器中的 ibdata1 进行。


-1
投票

使用此工具将数据库转储到磁盘http://sourceforge.net/projects/mysqlbutool/然后使用此工具将其恢复到新服务器http://www.webyog.com/

© www.soinside.com 2019 - 2024. All rights reserved.