1032错误----现在生产库中好多数据,在从库误删了,生产库更新后找不到了,现在主从不同步了,再跳过错误也没用,因为没这条,再更新还会报错
出现了主从不一致,开始分析原因。
主库上只看master哦
从库上只看slave哦
可以看到最近一条报错信息如下:
Could not execute Update_rows event on table infosys_login.business_login_user_auth_info;
Can't find record in 'business_login_user_auth_info', Error_code: 1032;
handler error HA_ERR_KEY_NOT_FOUND; the event's master log bin.000094, end_log_pos 537072939
1032主要有两种情况:
mysql> set global sql_slave_skip_counter=1;
Query OK, 0 rows affected (0.00 sec)
mysql> stop slave;
Query OK, 0 rows affected (0.02 sec)
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
[root@test13 mysql]# find / -name mysqlbinlog
/usr/bin/mysqlbinlog
[root@test13 ~]# find / -name bin.000094
/work1/data/mysql/bin.000094
[
可以看到是一条更新语句,UPDATE infosys_login
. business_login_user_auth_info
where XXX ... @1=272998577393905664对应的是库中的id,去从库中查看时,这条记录确实是被开发人员手动删除了的,从而造成了1032错误。
在从库中插入这条记录,执行:
insert into `business_login_user_auth_info`(`id`,`login_id`,`login_pwd`,`user_type`,`face_path`,`status`,`nick_name`,`sex`,`birthday`,`province`,`city`,`app_auth_key`,`last_login_app_type`,`last_view_time`,`last_login_ip`,`Last_login_client_id`,`create_time`,`update_time`,`h5_open_id`) values (272998577393905664,'UID_AD6EF34FE8083DC3315BE6F6D4F7A8D2','b803231ec56cebd83825b18461e20c7d',11,'http://thirdqq.qlogo.cn/g?b=oidb&k=1HPyicJeGDGXbzrHSZorTmw&s=100&t=1556471196',1,'滑翔的风v愚',1,NULL,NULL,NULL,'1',NULL,NULL,NULL,NULL,'2019-08-26 14:39:06',NULL,NULL)
再执行:
mysql> stop slave;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
mysql> show slave status \G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.163
Master_User: test123
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: bin.000094
Read_Master_Log_Pos: 537124219
Relay_Log_File: mysql-relay-bin.000006
Relay_Log_Pos: 314
Relay_Master_Log_File: bin.000094
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 537124219
Relay_Log_Space: 3895
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 163
Master_UUID: ec5e1ee1-f6e2-11e8-949d-005033ee2217
Master_Info_File: /work1/data/mysql/master.info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
1 row in set (0.00 sec)
问题解决。