mysql宕机后gtid丢失_MySQL启用Gtid时如何确保Slave crash safe

背景

MySQL5.6 支持slave crash safe特性,根据之前对slave crash safe特性的认识,在配置了以下参数的情况下,可以保证slave crash后保证数据的一致性。

relay_log_info_repository = TABLE

relay_log_recovery = ON

但是,用MySQL5.6(Percona Server 5.6.31) 配置基于GTID的主从复制(MASTER_AUTO_POSITION=1)后,进行slave宕机测试时,发现slave恢复后,复制正常但数据不一致(注意没有报错,主备的GTID也是一致的!!!)。

MySQL参数

log_bin = /data/mysql/binlog

sync_binlog = 1

innodb_flush_log_at_trx_commit = 2

log_slave_updates = true

gtid_mode = on

enforce_gtid_consistency = true

master_info_repository = TABLE

relay_log_info_repository = TABLE

relay_log_recovery = ON

测试方法

搭建主从复制

使用上面的参数搭建主从复制

创建测试表

mysql> show create table test.test1;

+-------+--------------------------------------------------------------------------------------------------------------------------------------------+

| Table | Create Table |

+-------+--------------------------------------------------------------------------------------------------------------------------------------------+

| test1 | CREATE TABLE `test1` (

`id` int(11) NOT NULL,

`num` int(11) DEFAULT NULL,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值