当前位置: 首页 > news >正文

mysql 主从1236_解决mysql开启GTID主从同步出现1236错误问题【转】

最近遇到mysql开启gtid做复制时,从库出现1236错误,导致同步无法进行,本文就这问题记录下处理步骤,有关gtid知识在这里不做介绍,mysql版本为5.7.16。

一、错误原因分析

错误信息如下:

Last_IO_Errno: 1236

Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'The slave is connecting using CHANGE MASTER TO MASTER_AUTO_POSITION = 1, but the master has purged binary logs containing GTIDs that the slave requires.'

109bcae7d02826c48141a6e2f85cc1c1.png

一般两种情况会出现以上现象

1.在主库上手动执行清除二进制日志文件

2.主库重启,重新同步时

二、解决方法:

1.在主库上执行以下命令,查询gtid_purged,记录下改值

mysql> show global variables like '%gtid%'\G

03913868a76a38ac3020ea911389ba1d.png

2.在从库上执行以下命令,查询已经执行过的gtid即gtid_executed,记录下主库的值,本机的不需要

212b4420910c054f8e807915b56d1e3c.png

3.在从库上执行以下命令停止同步线程及重置同步相关信息

mysql>stop slave;

mysql>reset slave;

mysql>reset master;

4.在从库上设置gtid_purged

该值有两个来源,一是在主库上查询的gtid_purged,二是在从库上查询的已经执行过的gtid_executed值(本机的就不需要,主库上gtid)

注意:一定记得加上从库上已经执行过的gtid,若只设置了主库上的gtid_purged,此时从库会重新拉取主库上所有的二进制日志文件,同步过程会出现其他错误,导致同步无法进行

mysql> set @@global.gtid_purged='4fa9ab33-3077-11e6-8ee6-fcaa14d0751b:1-18240458,6e41a42e-8529-11e6-b72e-fcaa14d07546:1-56604052:56604054-56605629:56605631-56871196,9850e381-b601-11e6-8e46-fcaa14d07546:1-3126210,c5cdcae2-9cb0-11e6-909c-fcaa14d0751b:1-1189,10a59961-c02d-11e6-a2de-fcaa14d07546:1-13381418';

注意:设置gtid_purged值时,gtid_executed值必须为空否则报错,该值清空的方法就是reset  master命令

执行完,再次查看相关信息

baeabce169e57e2b619280cf9f133ea9.png

5.重新开启同步

mysql>change master to master_host='192.168.1.15',master_port=3306,master_user='repl',master_password='xxx',master_auto_position=1;

mysql> startslave;

当从库追赶上主库,此时测试主从数据是否一致,测试结果一切正常

mk-table-checksum h=192.168.1.15,u=root,p=xxx,P=3306 h=192.168.1.19,u=root,p=xxxx,P=3307 -d 6coursestudychoose_test | mk-checksum-filter

转自

解决mysql开启GTID主从同步出现1236错误问题-linux之路-51CTO博客

http://blog.51cto.com/hnr520/1883282

相关文章:

  • main spring启动_Spring Boot 第一个示例 “main” 方法
  • mysql des_MySQL · 引擎特性 · InnoDB 文件系统之文件物理结构
  • mysql divided用法_BigDecimal的应用场景及使用方法
  • python 快速排序详解_学习笔记——快速排序(python实现)
  • mysql 总行数一半_《Mysql - Count(*) 的优化》
  • 删除视图的sql语句_推荐强大开源的数据库SQL语句审核平台,再也不用担心删除跑路了!...
  • php使用url连接mysql_3种通过php连接mysql的方法
  • qt mysql分页显示_qt mysql 分页
  • mysql操纵对象_MySQL数据库的对象操作
  • python数据类型转换教学_python数据类型转换
  • 分页插件怎么实现不跳转页面进入下一页_jQuery分页跳转插件
  • mysql中的集中日期格式,MySQL中的特定日期格式
  • mysql数据库的小数类型_mysql数据库小数类型
  • python showinfo 方法_Python+PyQt5实现美剧爬虫可视工具的方法
  • python增加工作日列_在python中添加迄今为止的工作日
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 【翻译】babel对TC39装饰器草案的实现
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • idea + plantuml 画流程图
  • JAVA_NIO系列——Channel和Buffer详解
  • JavaScript的使用你知道几种?(上)
  • Java多线程(4):使用线程池执行定时任务
  • java取消线程实例
  • JDK9: 集成 Jshell 和 Maven 项目.
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • pdf文件如何在线转换为jpg图片
  • Quartz初级教程
  • session共享问题解决方案
  • 程序员最讨厌的9句话,你可有补充?
  • 京东美团研发面经
  • 前端临床手札——文件上传
  • 日剧·日综资源集合(建议收藏)
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 一份游戏开发学习路线
  • C# - 为值类型重定义相等性
  • 如何正确理解,内页权重高于首页?
  • ​决定德拉瓦州地区版图的关键历史事件
  • #大学#套接字
  • (C语言)二分查找 超详细
  • (ZT)薛涌:谈贫说富
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (转)ObjectiveC 深浅拷贝学习
  • (转)可以带来幸福的一本书
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET Core中Emit的使用
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET 中让 Task 支持带超时的异步等待
  • .Net(C#)自定义WinForm控件之小结篇
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .py文件应该怎样打开?
  • @RequestParam详解