主从同步常遇见问题处理

Posted cong0ks

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了主从同步常遇见问题处理相关的知识,希望对你有一定的参考价值。

# 在master上更新一条记录,而slave上找不到,丢失了数据

Last_SQL_Error: Could not execute Update_rows_v1 event on table cwsys.cj_dj; Can‘t find record in ‘cj_dj‘, Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the event‘s master log mysql-bin.000376, end_log_pos 83010206

 

 

/usr/bin/mysqlbinlog --no-defaults -v -v --base64-output=DECODE-ROWS /oa57_data/master_data/mysql-bin.000376 |grep -A ‘10‘ 83010206

#200330 11:21:47 server id 10  end_log_pos 83010206 CRC32 0x8e49b876     Update_rows: table id 2766 flags: STMT_END_F
### UPDATE `cwsys`.`cj_dj`
### WHERE
###   @1=1882484 /* INT meta=0 nullable=0 is_null=0 */
###   @2= /* STRING(9) meta=65033 nullable=1 is_null=0 */
###   @3=银行 /* VARSTRING(33) meta=33 nullable=1 is_null=0 */
###   @4=160 /* SHORTINT meta=0 nullable=1 is_null=0 */
###   @5=1580362557 /* TIMESTAMP(0) meta=0 nullable=1 is_null=0 */
###   @6=0000-00-00 00:00:00 /* DATETIME(0) meta=0 nullable=1 is_null=0 */
###   @7=四川飞步科技有限公司 /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
###   @8=‘‘ /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
--
# at 83010206
#200330 11:21:47 server id 10  end_log_pos 83010237 CRC32 0xb692b09f     Xid = 10469469
COMMIT/*!*/;
# at 83010237
#200330 11:21:47 server id 10  end_log_pos 83010279 CRC32 0x450704ad     GTID 0-10-82227881 trans
/*!100001 SET @@session.gtid_seq_no=82227881*//*!*/;
BEGIN
/*!*/;
# at 83010279
#200330 11:21:47 server id 10  end_log_pos 83010430 CRC32 0x701e4300     Query    thread_id=1374267    exec_time=0error_code=0
SET TIMESTAMP=1585538507/*!*/;

 

在slave上,查找下更新后的那条记录,应该是不存在的

select * from cwsys.cj_dj where dj_id=1882484G

技术图片

 

 

在Master上,有数据

技术图片

 

以上是关于主从同步常遇见问题处理的主要内容,如果未能解决你的问题,请参考以下文章

Mysql Replication 主从同步

MySQL主从同步常见报错的解决办法

MySQL主从同步常见报错的解决办法2

笔记,常遇见的头疼问题

MySQL主从数据库同步延迟问题解决(转)

深入解析MySql 主从同步延迟原理及解决方案