Mysql主从同步如何重置
更新时间:2024年10月03日 13:01:54 作者:Janson666
在MySQL数据库运维中,遇到主从数据库数据不一致时需要进行同步重置,本文介绍了主从同步重置的具体步骤:首先对从库操作,包括停止slave、重置从库;其次对主库进行操作,包括重置主库同步设置、锁定主库;最后从库导入主库数据
背景
服务器强制重启,导致MySQL主从数据库出现数据不一致问题,主从数据库数据相差较大,无法完成数据同步,出现报错。
因此,需要进行主从同步重置操作。
1. 首先对从库进行操作
- 1)进入MySQL 命令行管理界面
mysql -uroot -p
- 2)停止slave
stop slave;
- 3)重置从库
reset slave all;
- 4)清除已同步数据库
# drop database `***`; 如:drop database 'eroom';
2. 对主库进行操作
- 1)重置主库同步设置
RESET MASTER;
- 2)锁定主库,只能读
FLUSH TABLES WITH READ LOCK;
- 3)退出MySQL控制台,执行导出全部mysql数据
# -h 当前主机ip地址 -p MySQL端口 mysqldump -uroot -p --host=192.168.0.116 --port=3306 --all-databases >/root/master-dump.sql
4)解锁主库
UNLOCK TABLES;
3. 从库导入主库导出的数据
- 1)导入全部数据
# -h 当前主机ip地址 -p MySQL端口 mysql -uroot -h 192.168.0.113 -P 3306 -p < /root/master-dump.sql
- 2)修改从库同步设置
change master to master_host='主库ip(192.168.1.1)',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=154; # master_log_file 如下图获取 # master_log_pos 如下图获取
- 3)获取master_log_file 和master_log_pos 数据
进入主库MySQL管理界面,执行一下命令,查看master_log_file 和master_log_pos 数据
show master status;

- 4)开启从库slave
start slave;
- 5)查看slave状态
show slave status\G;
如下图所示,则表示配置成功。

附录
1.设置主从配置:

2.添加数据同步账户:
grant replication slave on *.* to 'root'@'%' identified by '123456';
3.重启mysql
mysql restart
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
MYSQL同步 Slave_IO_Running: No 或者Slave_SQL_Running: No的解决方法[已测
为了服务器更好的安全特将mysql服务器同步一下,show slave status\G出现了Slave_IO_Running: No 错误,特整理了下,方便以后配置2011-06-06
MySQL使用索引合并(Index Merge)提高查询效率
本文介绍了索引合并(Index Merge)的实现原理、场景约束与通过案例验证的优缺点,在实际使用中,当查询条件列较多且无法使用联合索引时,就可以考虑使用索引合并,利用多个索引加速查询,但要注意,索引合并并非在任何场景下均具有较好的效果,需要结合具体情况选择2024-07-07
MySQL三种常用存储引擎InnoDB、MyISAM、Memory深度解析
在线教程千万篇,为什么你的 SQL 还是慢?因为没理解存储引擎的底层机制,本文将带你从源码角度彻底搞懂 InnoDB 行锁、聚簇索引,并给出生产环境的最优选型,需要的朋友可以参考下2026-05-05


最新评论