最近線上頻繁的出現slave延時的情況,經排查發(fā)現為用戶在刪除數據的時候,由于
表主鍵的缺少,同時刪除條件沒有索引,或或者刪除的條件過濾性極差,導致slave出現hang住,嚴重的影響了生產環(huán)境的穩(wěn)定性,也希望通過這篇博客,來加深主鍵在innodb引擎中的重要性,希望用戶在使用RDS,設計自己的表的時候,一定要為表加上主鍵,主鍵可以認為是innodb存儲引擎的生命,下面我們就來分析一下這個案例(本案例的生產環(huán)境的binlog為row模式,對于myisam存儲引擎也有同樣的問題):
- (1).現象slave:
- mysql> show slave status\G;
- *************************** 1. row ***************************
- Slave_IO_State: Waiting for master to send event
- Master_Host: xxx.xx.xx.xx
- Master_User: replicator
- Master_Port: 3006
- Connect_Retry: 60
- Master_Log_File: mysql-bin.000006
- Read_Master_Log_Pos: 47465657
- Relay_Log_File: slave-relay.100383
- Relay_Log_Pos: 251
- Relay_Master_Log_File: mysql-bin.000006
- 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: 18057461
- Relay_Log_Space: 29409335
- 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: 1339
- Master_SSL_Verify_Server_Cert: No
- Last_IO_Errno: 0
- Last_IO_Error:
- Last_SQL_Errno: 0
- Last_SQL_Error:
- slave的Seconds_Behind_Master一直在增加,slave出現hang住。
名稱欄目:【Mysql】mysql主鍵的缺少導致備庫hang-創(chuàng)新互聯
鏈接地址:
http://weahome.cn/article/dpedgo.html