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



我在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-bin)。也不要复制mysql-bin。索引,因为它包含对旧二进制日志的实际路径引用)。一旦你这样做,你应该能够重新启动mysql守护进程和登录看到数据库。

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

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

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

innodb_data_home_dir = "E:/MySQL Data"

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

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

相关内容

最新更新