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

时间:2012-12-24 21:58:55

标签: mysql mysql-workbench

我在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进程,但是我创建的数据库没有出现。有人会对我做错了什么有任何解释吗?

4 个答案:

答案 0 :(得分: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 :(得分:0)

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

PS:未经测试,但应该有效。

答案 2 :(得分:0)

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

答案 3 :(得分:-1)

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