In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-02-24 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >
Share
Shulou(Shulou.com)05/31 Report--
Editor to share with you how to set slave_exec_mode in mysql to automatically skip synchronization replication errors, I believe most people do not know much about it, so share this article for your reference, I hope you will learn a lot after reading this article, let's go to know it!
The slave_exec_mode setting can skip 1032 (record not found) and 1062 (duplicate primary key) errors and log them in the error log.
The function of slave_exec_mode is the same as that of slave_skip_errors, except that slave_exec_mode can be dynamically set online. Slave_skip_errors must be added to the configuration file for the restart to take effect.
Prepare the library
Mysql > select * from testdb1.student
+-+
| | id | name | class | score | |
+-+
| | 1 | a | 1 | 45 |
| | 2 | b | 1 | 46 | |
| | 3 | c | 2 | 89 | |
| | 4 | d | 2 | 90 | |
| | 5 | e | 3 | 67 | |
| | 6 | f | 3 | 87 | |
| | 7 | g | 4 | 77 | |
| | 8 | h | 4 | 91 | |
+-+
8 rows in set (0.00 sec)
Mysql > delete from testdb1.student where id > 5
Query OK, 3 rows affected (0.00 sec)
Mysql > commit
Query OK, 0 rows affected (0.00 sec)
# before modifying parameters
Main library master
Mysql > delete from testdb1.student where id > 7
Query OK, 1 row affected (0.00 sec)
Standby database view status
Mysql > show slave status\ G
* * 1. Row *
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.56.91
Master_User: rep
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: ray-bin.000008
Read_Master_Log_Pos: 1272
Relay_Log_File: ray-relay-bin.000003
Relay_Log_Pos: 1226
Relay_Master_Log_File: ray-bin.000008
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 testdb1.student; Can't find record in 'student', Error_code: 1032; handler error HA_ERR_END_OF_FILE; the event's master log ray-bin.000008, end_log_pos 1241
Skip_Counter: 0
Exec_Master_Log_Pos: 1065
Relay_Log_Space: 1957
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 testdb1.student; Can't find record in 'student', Error_code: 1032; handler error HA_ERR_END_OF_FILE; the event's master log ray-bin.000008, end_log_pos 1241
Replicate_Ignore_Server_Ids:
Master_Server_Id: 2
Master_UUID: 840f94e0-8ea0-11e5-af92-080027a94012
Master_Info_File: / data/3307/data/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: 151126 12:42:37
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
1 row in set (0.00 sec)
Mysql > stop slave
Query OK, 0 rows affected (0.78 sec)
Mysql > set global sql_slave_skip_counter=1
Query OK, 0 rows affected (0.01 sec)
Mysql > start slave
Query OK, 0 rows affected (0.33 sec)
# modify slave database parameters
Mysql > show variables like'% slave_exec_mode%'
+-+ +
| | Variable_name | Value |
+-+ +
| | slave_exec_mode | STRICT |
+-+ +
1 row in set (0.00 sec)
Mysql > set global slave_exec_mode=idempotent
Query OK, 0 rows affected (0.00 sec)
Mysql > show variables like'% slave_exec_mode%'
+-+ +
| | Variable_name | Value |
+-+ +
| | slave_exec_mode | IDEMPOTENT |
+-+ +
1 row in set (0.00 sec)
The main database deletes data
Mysql > delete from testdb1.student where id > 6
Query OK, 1 row affected (0.01sec)
Mysql > commit
Query OK, 0 rows affected (0.00 sec)
Prepare the database to view status and error logs
Mysql > show slave status\ G
* * 1. Row *
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.56.91
Master_User: rep
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: ray-bin.000008
Read_Master_Log_Pos: 1479
Relay_Log_File: ray-relay-bin.000004
Relay_Log_Pos: 488
Relay_Master_Log_File: ray-bin.000008
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: 1479
Relay_Log_Space: 1972
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: 2
Master_UUID: 840f94e0-8ea0-11e5-af92-080027a94012
Master_Info_File: / data/3307/data/master.info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it
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
1 row in set (0.00 sec)
[root@ray] # tail-20f / data/3307/data/mysql_ray.err
2015-11-26 12:50:29 12127 [Warning] Slave SQL: Could not execute Delete_rows event on table testdb1.student; Can't find record in 'student', Error_code: 1032; handler error HA_ERR_END_OF_FILE; the event's master log ray-bin.000008, end_log_pos 1655, Error_code: 1032
Note: pos may not match, because the problem of interception, do not care.
The above is all the contents of the article "how to set slave_exec_mode in mysql to automatically skip synchronous replication errors". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.