一、简介:

  mysql 5.7 多源复制,主从同步的时候,主库update一条数据,从库这条数据已经被删除,导致主从断掉。

  Last_Errno: 1032

  MySQL主从同步的1032错误,一般是指要更改的数据不存在,SQL_THREAD提取的日志无法应用故报错,造成同步失败

(Update、Delete、Insert一条已经delete的数据)。1032的错误本身对数据一致性没什么影响,影响最大的是造成了同步失败.

二、解决方案:

  MySQL5.7.15-log版本,binlog模式为ROW。

  show slave status\G,可以看到如下报错:

 1  Last_Errno: 1032
 2                    Last_Error: Coordinator stopped because there were error(s) in the worker(s). The most recent failure being: Worker 3 failed executing transaction '1699
 3 7e5e-5707-11e7-a702-94188201787c:161982297' at master log mysql-bin.000309, end_log_pos 774308000. See error log and/or performance_schema.replication_applier_status_by_worker table for more details about this failure or others, if any.                 Skip_Counter: 0
 4           Exec_Master_Log_Pos: 774271552
 5               Relay_Log_Space: 1266940262
 6               Until_Condition: None
 7                Until_Log_File:
 8                 Until_Log_Pos: 0
 9            Master_SSL_Allowed: No
10            Master_SSL_CA_File:
11            Master_SSL_CA_Path:
12               Master_SSL_Cert:
13             Master_SSL_Cipher:
14                Master_SSL_Key:
15         Seconds_Behind_Master: NULL
16 Master_SSL_Verify_Server_Cert: No
17                 Last_IO_Errno: 0
18                 Last_IO_Error:
19                Last_SQL_Errno: 1032
20                Last_SQL_Error: Coordinator stopped because there were error(s) in the worker(s). The most recent failure being: Worker 3 failed executing transaction '1699
21 7e5e-5707-11e7-a702-94188201787c:161982297' at master log mysql-bin.000309, end_log_pos 774308000. See error log and/or performance_schema.replication_applier_status_by_worker table for more details about this failure or others, if any.

查看 error.log:

vim error.log

2018-10-26T01:55:00.133136+08:00 16179 [ERROR] Slave SQL for channel 'master_6': Worker 3 failed executing transaction '16997e5e-5707-11e7-a702-94188201787c:161982297' at
master log mysql-bin.000309, end_log_pos 774308000; Could not execute Update_rows event on table test.test_log; Can't find record in 'test_log', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the event's master log mysql-bin.000309, end_log_pos 774308000, Error_code: 1032

方法一:跳过错误

1)先跳过这一条错误,让主从同步恢复正常。(或者N条event,一条一条跳过)

  set global sql_slave_skip_counter=1;

  start slave sql_thread for channel 'master_6';

  slave 起来之后,恢复数据,在从库上重新insert 进这条

2)The most recent failure being: Worker 3 failed executing transaction '169921 7e5e-5707-11e7-a702-94188201787c:161982297'

  GTID 模式下还可以这样:

  set gtid_next='169921 7e5e-5707-11e7-a702-94188201787c:161982297';

  begin;

  commit;

  set gtid_next='automatic';

  stop slave sql_thread for channel 'master_6';

  start slave sql_thread for channel 'master_6';

方法二:还原被删除的数据

根据错误提示通过mysqlbinglog找到这条数据的sql, 此事件在主服务器Master binlog中的位置是mysql-bin.000309, end_log_pos77430800

 1 [root@xxxxx binlog]# mysqlbinlog  --no-defaults --stop-position=774308000 mysql-bin.000309 -vv |grep -A 20 774308000
 2 #181026  1:55:00 server id 3663306  end_log_pos 774308000 CRC32 0x2969563a     Update_rows: table id 52745 flags: STMT_END_F
 3
 4 BINLOG '
 5 dAPSWxPK5TcAWgAAAIr+Ji4AAAnOAAAAAAEAB21vbml0b3IAEWpvYl9leGVjdXRpb25fbG9nAAsP
 6 Dw8PDwMPDwMRERCgAJAB/AP8A8gAUACAPgAAgAbDz1ww
 7 dAPSWx/K5TcAFgIAAKAAJy4AAAnOAAAAAAEAAgAL/4D8JDZlOGJjNGZlLTlmYzktNDllYS1h
 8 NjliLWE4YmNjMWZjOGJlZiQAb21zVXBkYXRlV2FyZWhvdXNlT3JkZXJUYXNrU3RhdHVzSm9iZgBv
 9 bXNVcGRhdGVXYXJlaG91c2VPcmRlclRhc2tTdGF0dXNKb2JALUAwQC1AUkVBRFlALUAxMC4xNTcu
10 MzIuMzlALUA2NTYyYzQ5YS0zMjQyLTQyNWQtODdhZC1lZTA4N2M0NmYzN2UXAGRwcHZkb2NzZXIx
11 OC5zZXBob3JhLmNuDDEwLjE1Ny4zMi4zOQAAAAAOTk9STUFMX1RSSUdHRVIAAAAAW9IDdID4JDZl
12 OGJjNGZlLTlmYzktNDllYS1hNjliLWE4YmNjMWZjOGJlZiQAb21zVXBkYXRlV2FyZWhvdXNlT3Jk
13 ZXJUYXNrU3RhdHVzSm9iZgBvbXNVcGRhdGVXYXJlaG91c2VPcmRlclRhc2tTdGF0dXNKb2JALUAw
14 QC1AUkVBRFlALUAxMC4xNTcuMzIuMzlALUA2NTYyYzQ5YS0zMjQyLTQyNWQtODdhZC1lZTA4N2M0
15 NmYzN2UXAGRwcHZkb2NzZXIxOC5zZXBob3JhLmNuDDEwLjE1Ny4zMi4zOQAAAAAOTk9STUFMX1RS
16 SUdHRVIBAAAAW9IDdFvSA3Q6Vmkp
17 '/*!*/;
18 ### UPDATE `test`.`test_log`
19 ### WHERE
20 ###   @1='6e8bc4fe-9fc9-49ea-a69b-a8bcc1fc8bef' /* VARSTRING(160) meta=160 nullable=0 is_null=0 */
21 ###   @2='omsUpdateWarehouseOrderTaskStatusJob' /* VARSTRING(400) meta=400 nullable=0 is_null=0 */
22 ###   @3='omsUpdateWarehouseOrderTaskStatusJob@-@0@-@READY@-@1@-@6562c49a-3242-425d-87ad-ee087c46f37e' /* VARSTRING(1020) meta=1020 nullable=0 is_null=0 */

事务的语句为: UPDATE `test`.`test_log` where @1=‘’,@2=‘’ (@1为第一个字段,@2为第二个字段)

要是从库少了这个数据,把上面binglog中的update 改为insert

不要记录binlog:

set sql_log_bin=0;

insert  into `test`.`test_log`   values() ;

set sql_log_bin=1;

start slave sql_thread for channel 'master_6';

转载于:https://www.cnblogs.com/Camiluo/p/9857290.html

【MySQL 5.7 】从库1032 报错处理相关推荐

  1. mysql 备库 1032_【MySQL 5.7 】从库1032 报错处理

    一.简介: mysql 5.7 多源复制,主从同步的时候,主库update一条数据,从库这条数据已经被删除,导致主从断掉. Last_Errno: 1032 MySQL主从同步的1032错误,一般是指 ...

  2. 【Shell】fix 1032报错信息的脚本

     生产环境总会遇到由于各种原因导致的主从复制不一致的情况,导致slave出现 1032报错.为了使主从关系能够稳定的运行,大多时候可以选择修复1032 报错 ,先跳过去 ,然后使用 percona   ...

  3. 解决MySQL事务未提交导致死锁报错 避免死锁的方法

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/xuheng8600/article/d ...

  4. kali linux 安装 Mysql Can‘t read from messagefile 报错解决方案

    kali linux 安装 Mysql Can't read from messagefile 报错解决方案 参考文章: (1)kali linux 安装 Mysql Can't read from ...

  5. 通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 ‘incorrect string value: '\xF0......

    原文:[原创]通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 'incorrect string value: '\xF0... 这篇blog重点在解决问题,如果你对 ...

  6. mysql把data移走后报错_【mysql案例】Failedtoopenlog--datadir物理迁移报错

    1.1.1.mysql5.6.14的datadir迁移时遇到报错 [环境描述] 在机器A上安装了perconamysql 5.6.14,数据库停启正常,datadir路径为pathA,并且已经做了应用 ...

  7. python的moviepy库 打包 报错: ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fade 的解决办法

    本篇文章主要讲解python的moviepy库 打包 报错: 'moviepy.audio.fx.all' has no attribute 'audio_fade 的解决办法 日期:2022年3月9 ...

  8. python导入requests库一直报错原因总结_python pip 安装库文件报错:pip install ImportError: No module named _internal...

    centos6,python3,通过pip安装pycurl出现报错提示 Centos6.7系统,python3.6.7,通过 pip 安装pycurl出现报错: __main__.Configurat ...

  9. 关于MySQL的wait_timeout连接超时问题报错解决方案

    关于MySQL的wait_timeout连接超时问题报错解决方案 参考文章: (1)关于MySQL的wait_timeout连接超时问题报错解决方案 (2)https://www.cnblogs.co ...

最新文章

  1. 一文搞懂JVM架构和运行时数据区,全网最新
  2. iOS - 判断用户是否允许推送通知(iOS7/iOS8)
  3. 解释http和html,解释HTTP、HTML的含义
  4. gitlab mr wip 怎么弄成_基于GitLab的工作流程设计
  5. 几个提升Go业务开发效率的流行框架和开源库
  6. 详细介绍Linux shell脚本基础学习(一)
  7. java砖头铺路面试题,Java基础知识面试题
  8. 网络规划设计和具体实施
  9. html文字段落i排版,i排版怎么修改字体 字体排版详细介绍
  10. 国自然标书,600多份成功申请基金的标书 可下载
  11. 【HTML】讲讲对HTML5的语义化的理解
  12. 用sqlyog打开.sql文件
  13. Samy 蠕虫代码
  14. wifi认证_扫二维码认证登录方式详解
  15. 手机怎么更改html打开方式,安卓如何更改文件打开方式?
  16. c语言求圆锥的表面积和体积_用C语言求圆锥体积
  17. gcore 获取程序core dump file 但程序不用退出,gdb 分析core
  18. 银河麒麟桌面操作系统V10创建热点
  19. Modulation of Lipid Metabolism by Celastrol (文献分享一组-赵倩倩)
  20. 计算机器和智能-阿兰图灵(转帖)

热门文章

  1. java io字符流_Java IO流字符流简介及基本使用
  2. 给萌新HTML5 入门指南
  3. Web前端新手一定要知道的几个框架!
  4. 【C语言】在线OJ题 BC7-BC52-牛客网编程初学者入门训练
  5. cookielifetime php_PHP session有效期session.gc_maxlifetime的设置方法
  6. php 自动处理小图的代码,php对图像的各种处理函数代码小结
  7. python如何使用字典中的值并进行比较_比较字典python中的值
  8. nginx location 匹配 多个规则_后端程序员不得不会的 Nginx 转发匹配规则
  9. xp桌面计算机隐藏设置方法,匿于无形 WindowsXP系统隐藏技巧大放送
  10. MyBatis-Plus逆向工程——Generator