MySQL迁移数据(切换数据保存的文件夹)

  • Post author:
  • Post category:mysql


备注:此流程是针对windows下相同版本(5.7.20)的(不同版本之间的迁移可参考,不一定成功,本人没有测试)

1、首先做好数据备份,将原来的data文件夹(我的目录D:\company\mysql-5.7.20-winx64\data)复制备份

2、停止原先的服务

进入到MySQL的bin文件夹(我的目录D:\company\mysql-5.7.20-winx64\bin)

net stop mysql

3、如果与bin同级的目录先存在data文件夹,删除

4、执行初始化,这时会在bin同级目录下产生data文件夹及文件夹内文件

 mysqld --initialize

5、修改配置文件my.ini中的属性,datadir 为新的数据保存目录

 datadir = D:\company\mysql\data

6、将第四步中的data文件夹剪切到D:\company\mysql目录下

7、将原来备份的data文件夹中的文件复制到新的目录下,其中红框部分不需要复制,里面的文件夹表示一个数据库,其中ibdata1一定要复制,不然无法操作数据库中的文件

这里写图片描述

8、启动服务

net start mysql

如果未进行第6步,服务启动失败,服务没有报告任何错误。

9、获取初始化密码

MySQL data目录下 系统用户名.err日志文件中,这个密码是随机的,可通过关键字搜索
2018-05-16T02:14:04.306268Z 1 [Note] A temporary password is generated for root@localhost: x9auqfBAr!u#

10、修改密码

D:\company\mysql-5.7.20-winx64\bin>mysql -uroot -p
Enter password: ************
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 15
Server version: 5.7.20

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SET PASSWORD = PASSWORD('root');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql>



版权声明:本文为u012562117原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。