首页 > 技术文章 > mysql5.7主主关系修改

xiaohanlin 2019-12-30 16:52 原文

164是165的从库,我需要清空147现在的同步配置,然后把165的数据导出到147上然后配置成165和147主主

 

1,先在165和147上执行stop slave;

 

2,然后在147上执行   reset slave all;   

这时在147上执行  show slave status;  可以发现之前配置的同步信息已经被清空了

 

3,在165上执行如下命令把165数据库锁定,不让165数据库写数据(这些命令和以上2步骤的命令都可以在docker exec -it mysqlxxx bash  里面命令行执行,或者在mysql workbench里面执行)

use nova;

flush tables with read lock;

4,通过  docker exec -it mysql5_7_24-165 bash  进入  mysql容器进行数据备份

 

mysqldump -uroot -p nova -e --max_allowed_packet=1048576 --net_buffer_length=16384 > /nova_20191230.sql

 

5,然后用 docker cp mysql5_7_24-165:/nova_20191230.sql /

把nova_20191230.sql 拷贝到165的linux宿主机上,然后用   tar -zcvf nova_20191230.sql.tar.gz nova_20191230.sql   

然后 scp nova_20191230.sql.tar.gz root@15.15.181.147:/         传到147上去

 

6,在147上执行  docker cp nova_20191230.sql.tar.gz mysql5_7_24-147:/     

把备份的165数据库拷贝到147的mysql容器中

然后进入147的mysql容器  docker exec -it mysql5_7_24-147 bash

tar -zxvf nova_20191230.sql.tar.gz

 

7,在147的mysql容器中执行

mysql -uroot -p

然后

mysql> use nova

mysql> source /nova_20191230.sql

 

8,等147导入数据完成后查询165的master 状态      show master status;

 

推荐阅读