问题描述:
有个网友在QQ群中问到:
GTID模式执行执行以下语句时从库出错,binlog_format=ROW
主库执行delete from mysql.user where password='';
root@localhost:mysqlbost3376.sock((none)) mysql> select user,host,password from mysql.user;
+------+--------------+-------------------------------------------+
| user | host | password |
+------+--------------+-------------------------------------------+
| root | localhost | *56033C33EE1C4388FE7520ssBFFA0AB1A9040EFC|
| bak | 192.168.17.3 | *2DB8F616A9DE1849577ss0B5EA50BD86E3533E0F |
+------+--------------+-------------------------------------------+
2 rows in set (0.00 sec)
从库复制出现以下错误
root@localhost:mysqlbost3376.sock((none)) mysql> show slave status \G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.17.2
Master_User: bak
Master_Port: 3376
Connect_Retry: 60
Master_Log_File: mysql3376-bin.000003
Read_Master_Log_Pos: 1605
Relay_Log_File: HZ_MYSQL_173-relay-bin.000002
Relay_Log_Pos: 942
Relay_Master_Log_File: mysql3376-bin.000003
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 1032
Last_Error: Could not execute Delete_rows event on table mysql.user; Can't find record in 'user', Error_code: 1032; handler error
HA_ERR_KEY_NOT_FOUND; the event's master log mysql3376-bin.000003, end_log_pos 1536
Skip_Counter: 0
Exec_Master_Log_Pos: 724
Relay_Log_Space: 2034
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: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 1032
Last_SQL_Error: Could not execute Delete_rows event on table mysql.user; Can't find record in 'user', Error_code: 1032; handler error
HA_ERR_KEY_NOT_FOUND; the event's master log mysql3376-bin.000003, end_log_pos 1536
Replicate_Ignore_Server_Ids:
Master_Server_Id: 7601
Master_UUID: 67baa19f-0aab-11e6-986e-141877594be2
Master_Info_File: /data/mysql/bost3376/bost3376data/master.info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State:
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp: 160425 14:15:58
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set: 67baa19f-0aab-11e6-986e-141877594be2:1-4
Executed_Gtid_Set: 67baa19f-0aab-11e6-986e-141877594be2:1-3,6ddb6921-0aab-11e6-986f-141877584236:1
Auto_Position: 1
1 row in set (0.00 sec)
ERROR:
No query specified
从库user表内容如下:
root@localhost:mysqlbost3376.sock((none)) mysql> select user,host,password from mysql.user;
+------+----------------+-------------------------------------------+
| user | host | password |
+------+----------------+-------------------------------------------+
| root | localhost | *56033C33EE1C4388FE7520BdddFFA0AB1A9040EFC |
| root | hz\_mysql\_173 | |
| root | 127.0.0.1 | |
| root | ::1 | |
| | localhost | |
| | hz\_mysql\_173 | |
| bak | 192.168.17.3 | *2DB8F616A9DE18495770Bddd5EA50BD86E3533E0F |
+------+----------------+-------------------------------------------+
7 rows in set (0.00 sec)
从以上可以看到从库数据没有被删除。
问题分析:
从库的SQL线程报错:Could not execute Delete_rows event on table mysql.user; Can't find record in 'user', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the
event's master log mysql3376-bin.000003, end_log_pos 1536,先是猜测很大可能是因为主库和从库的user表中password为空的数据不同。由于主库的数据删除,只能请网友提供主库的
binlog日志解析,如下:
主库binlog日志:
# at 840
#160425 14:15:58 server id 7601 end_log_pos 1009 CRC32 0x2ae165ac Table_map: `mysql`.`user` mapped to number 1
# at 1009
#160425 14:15:58 server id 7601 end_log_pos 1536 CRC32 0x7ee67deb Delete_rows: table id 1 flags: STMT_END_F
### DELETE FROM `mysql`.`user`
### WHERE
### @1='hz\_mysql\_172' /* STRING(180) meta=65204 nullable=0 is_null=0 */
### @2='root' /* STRING(48) meta=65072 nullable=0 is_null=0 */
### @3='' /* STRING(41) meta=65065 nullable=0 is_null=0 */
### @4=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @5=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @6=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @7=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @8=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @9=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @10=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @11=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @12=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @13=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @14=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @15=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @16=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @17=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @18=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @19=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @20=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @21=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @22=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @23=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @24=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @25=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @26=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @27=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @28=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @29=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @30=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @31=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @32=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @33=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @34='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @35='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @36='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @37=0 /* INT meta=0 nullable=0 is_null=0 */
### @38=0 /* INT meta=0 nullable=0 is_null=0 */
### @39=0 /* INT meta=0 nullable=0 is_null=0 */
### @40=0 /* INT meta=0 nullable=0 is_null=0 */
### @41='mysql_native_password' /* STRING(192) meta=65216 nullable=1 is_null=0 */
### @42='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
### @43=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### DELETE FROM `mysql`.`user`
### WHERE
### @1='127.0.0.1' /* STRING(180) meta=65204 nullable=0 is_null=0 */
### @2='root' /* STRING(48) meta=65072 nullable=0 is_null=0 */
### @3='' /* STRING(41) meta=65065 nullable=0 is_null=0 */
### @4=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @5=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @6=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @7=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @8=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @9=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @10=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @11=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @12=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @13=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @14=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @15=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @16=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @17=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @18=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @19=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @20=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @21=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @22=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @23=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @24=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @25=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @26=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @27=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @28=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @29=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @30=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @31=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @32=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @33=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @34='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @35='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @36='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @37=0 /* INT meta=0 nullable=0 is_null=0 */
### @38=0 /* INT meta=0 nullable=0 is_null=0 */
### @39=0 /* INT meta=0 nullable=0 is_null=0 */
### @40=0 /* INT meta=0 nullable=0 is_null=0 */
### @41='mysql_native_password' /* STRING(192) meta=65216 nullable=1 is_null=0 */
### @42='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
### @43=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### DELETE FROM `mysql`.`user`
### WHERE
### @1='::1' /* STRING(180) meta=65204 nullable=0 is_null=0 */
### @2='root' /* STRING(48) meta=65072 nullable=0 is_null=0 */
### @3='' /* STRING(41) meta=65065 nullable=0 is_null=0 */
### @4=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @5=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @6=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @7=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @8=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @9=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @10=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @11=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @12=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @13=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @14=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @15=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @16=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @17=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @18=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @19=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @20=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @21=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @22=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @23=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @24=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @25=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @26=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @27=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @28=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @29=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @30=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @31=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @32=2 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @33=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @34='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @35='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @36='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @37=0 /* INT meta=0 nullable=0 is_null=0 */
### @38=0 /* INT meta=0 nullable=0 is_null=0 */
### @39=0 /* INT meta=0 nullable=0 is_null=0 */
### @40=0 /* INT meta=0 nullable=0 is_null=0 */
### @41='mysql_native_password' /* STRING(192) meta=65216 nullable=1 is_null=0 */
### @42='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
### @43=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### DELETE FROM `mysql`.`user`
### WHERE
### @1='localhost' /* STRING(180) meta=65204 nullable=0 is_null=0 */
### @2='' /* STRING(48) meta=65072 nullable=0 is_null=0 */
### @3='' /* STRING(41) meta=65065 nullable=0 is_null=0 */
### @4=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @5=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @6=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @7=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @8=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @9=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @10=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @11=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @12=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @13=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @14=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @15=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @16=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @17=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @18=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @19=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @20=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @21=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @22=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @23=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @24=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @25=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @26=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @27=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @28=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @29=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @30=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @31=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @32=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @33=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @34='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @35='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @36='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @37=0 /* INT meta=0 nullable=0 is_null=0 */
### @38=0 /* INT meta=0 nullable=0 is_null=0 */
### @39=0 /* INT meta=0 nullable=0 is_null=0 */
### @40=0 /* INT meta=0 nullable=0 is_null=0 */
### @41='mysql_native_password' /* STRING(192) meta=65216 nullable=1 is_null=0 */
### @42=NULL /* STRING(192) meta=2 nullable=1 is_null=1 */
### @43=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### DELETE FROM `mysql`.`user`
### WHERE
### @1='hz\_mysql\_172' /* STRING(180) meta=65204 nullable=0 is_null=0 */
### @2='' /* STRING(48) meta=65072 nullable=0 is_null=0 */
### @3='' /* STRING(41) meta=65065 nullable=0 is_null=0 */
### @4=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @5=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @6=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @7=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @8=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @9=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @10=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @11=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @12=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @13=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @14=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @15=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @16=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @17=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @18=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @19=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @20=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @21=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @22=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @23=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @24=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @25=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @26=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @27=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @28=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @29=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @30=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @31=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @32=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @33=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
### @34='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @35='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @36='' /* BLOB/TEXT meta=2 nullable=0 is_null=0 */
### @37=0 /* INT meta=0 nullable=0 is_null=0 */
### @38=0 /* INT meta=0 nullable=0 is_null=0 */
### @39=0 /* INT meta=0 nullable=0 is_null=0 */
### @40=0 /* INT meta=0 nullable=0 is_null=0 */
### @41='mysql_native_password' /* STRING(192) meta=65216 nullable=1 is_null=0 */
### @42=NULL /* STRING(192) meta=2 nullable=1 is_null=1 */
### @43=1 /* ENUM(1 byte) meta=63233 nullable=0 is_null=0 */
# at 1536
#160425 14:15:58 server id 7601 end_log_pos 1605 CRC32 0xd39bc7e4 Query thread_id=5 exec_time=0 error_code=0
SET TIMESTAMP=1461564958/*!*/;
COMMIT
上面看到主库共删除了5条符合条件的记录,其中(以上标红色部分)@1='hz\_mysql\_172'的两条被删除的记录,与从库中查询user表内容的两条记录hz\_mysql\_173不一致,是引起报错的原
因。
问题解决:
Retrieved_Gtid_Set项:记录了relay日志从Master获取了binlog日志的位置
Executed_Gtid_Set项:记录本机执行的binlog日志位置(如果是从机,包括Master的binlog日志位置和slave本身的binlog日志位置)
此案例中,slave的相关值如下:
Retrieved_Gtid_Set: 67baa19f-0aab-11e6-986e-141877594be2:1-4
Executed_Gtid_Set: 67baa19f-0aab-11e6-986e-141877594be2:1-3,6ddb6921-0aab-11e6-986f-141877584236:1
在从库上操作:
stop slave;
set gtid_next='67baa19f-0aab-11e6-986e-141877594be2:1-4';
begin;commit;
set gtid_next="AUTOMATIC";
start slave;
然后再查看show slave status\G
QQ记录如下:
hz\_mysql\_173
杭州 14:52:44
这个应该是和ROW格式有关 为什么不支持这种写法 不是很清楚 望各位指点
佛山 15:01:01
应该不是不支持,是本身两边的数据库不一致吧
佛山 15:01:18
主库在删除前,有没有比较两边的数据是否相同
杭州15:02:03
一致
佛山15:02:46
这个报错就是从库数据不一致,SQL thread中断报错
佛山15:03:46
分析一下主库的binlog,看delete操作,操作了哪些记录
佛山15:03:56
然后与从库的记录比较一下
杭州15:06:13
是不是因为这个hz\_mysql\_172 主机名不一样
### DELETE FROM `mysql`.`user`
### WHERE
### @1='hz\_mysql\_172' /* STRING(180) meta=65204 nullable=0 is_null=0 */
杭州15:06:26
一个是172 一个是173
杭州15:09:57
主库是已经被我删除了
佛山15:11:28
能不能将完整的binlog中的delete日志发下
杭州15:13:23
难道是要主从所有的列值都一致从库才能删除
佛山 15:14:32
是的
佛山 15:14:38
要数据一致
佛山15:15:00
主库是172,从库是173
佛山15:15:05
值 不同
杭州15:15:47
行 谢谢啊
佛山15:15:50
杭州 15:33:55
已解决 谢谢
佛山15:35:40
不用客气