主从不一致解决方案

此方案重新实现主从,数据完全同步

1)进入主库数据库
mysql -uroot -proot

2) 在主库加锁,开启只读服务(保证没有新数据写入)

flush tables with read lock;

3)在主库进行数据备份,把数据备份为.sql的文件

mysqldump -u登陆用户 -p登陆密码  --all-databases > mysql.back.sql
如:mysqldump -uroot -p123456  --all-databases > mysql.back.sql

注意:mysqldump命令可直接在服务器上运行,不用进入mysql

4)在主库解锁

unlock tables;

5) 把mysql的备份文件传输到从库服务器上,放到方便找到的路径下

scp -r /root/mysql.bask.sql 服务器用户名@服务器ip:存放路径
如:scp -r /root/mysql.bask.sql [email protected]:/tmp/

注意:如果在主库上不能直接将文件同步到从库,可找其它解决方案,也可利用工具现将文件下载到本地在上传到从库

6)进入从库数据库,停止同步服务

stop slave;

7) 在从库数据库中使用备份进行数据同步

source 备份文件存放的路径;
如:source /tmp/mysql.back.sql;
8)进入主库获取数据
show master status;

获取文件名称和文件位置 

主从不一致解决方案_第1张图片 9)从库数据库设置同步服务

change master to master_host='192.168.13.4',master_user='root',master_password='root',
master_log_file='mysql-bin.000019',master_log_pos=271210840;

10)在从库数据库启动同步服务

start slave;

11)查看从库状态

show slave status\G

主从不一致解决方案_第2张图片

注意:执行这个命令需要该数据库的最高全下,否则展示不出来。 

你可能感兴趣的:(数据库)