Mysql5.7基于日志转为基于事务主从复制
将基于日志的复制变更为基于事务的复制
mysql版本要高于5.7.6
gtid_mode要设为off
处理步骤
详细步骤
1.查看主从mysql版本是否高于5.7.6
show variables like 'version';
2.查看主从服务器mysql的gtid_mode是否为off
show variables like 'gtid_mode';
以下操作主从服务器同时设置
3.设置主从服务器,注意查看mysql的log。
set @@global.enforce_gtid_consistency=warn;
set @@global.enforce_gtid_consistency=on;
set @@global.gtid_mode=off_permissive;
set @@global.gtid_mode=on_permissive;
查看是否已经改变状态 show variables like 'gtid_mode';
show status like 'ongoing_anonymous_transaction_count'; 只查询从,出现空值或者0都是可以的
set @@global.gtid_mode=on;
以下操作从服务器设置
改变auto_position状态
stop slave;
change master to master_auto_position=1;
start slave;
show slave status; 多了Gtid的设置,其他一样
Error
上述步骤刚做完,发现一个进程没启动,报一个1032的error。
解决方法:跳过error
(1)停止slave进程
mysql> STOP SLAVE;
(2)设置事务号,事务号从Retrieved_Gtid_Set获取
在session里设置gtid_next,即跳过这个GTID,这里选Retrieved_Gtid_Set(未执行)存在且Executed_Gtid_Set(已执行)不存在的(其中-代表范围)
mysql> SET @@SESSION.GTID_NEXT= '8f9e146f-0a18-11e7-810a-0050568833c8:4'
(3)设置空事物
mysql> BEGIN; COMMIT;
(4)恢复事物号
mysql> SET SESSION GTID_NEXT = AUTOMATIC;
(5)启动slave进程
mysql> START SLAVE;
最新文章
- Python NaN
- 队列送券的实际应用--ConcurrentLinkedQueue并发队列
- PHP 文件创建/写入
- reactjs源码
- Compound Interest Calculator3.0续
- Windows7 IIS7 无法启动计算机上的服务W3SVC如何修复
- jenkins 集成钉钉机器人
- 30分钟快速学习Shell脚本编程
- 1小时学会JQuery
- React.js 三周 -- 入门到搭建团队基础项目
- HDU 2012 素数判定
- fab提供远程IP和账号密码
- iOS app开发入门
- 软工1816 · 作业(十二)Beta答辩总结
- HDU 4764:Stone(巴什博弈)
- Double类型的数向上取整和向下取整
- 解决IE6已终止操作问题
- Andorid API Package --->; android.app
- 单网卡安装neutron
- Java设计模式—策略模式