MySQL DBA 複製故障處理及一致性校驗(十一)

通常是sql_thread錯誤mysql

1236錯誤sql

mysqldump備份數據重建複製session

mysqldump -uxxx -p -s /tmp/mysql.sock --master-data=2 --single-transaction -A > backup.sql架構

reset master;.net

mysqldump -uxxx -p -s /tmp/mysql.sock < backup.sql3d

retrieved_gtid_set出現空洞沒問題,可是若是executed_gtid_set有空洞就說明丟數據日誌

修復retrieved_gtid_set空洞的辦法blog

stop slave;reset slave all;change master to ...;start slave;進程

 

1062事務

出現問題的緣由,從庫有數據寫入,或者主庫crash重啓,InnoDB數據沒有持久化

 

1032

delete,update的記錄在從庫上被delete掉了

傳統複製

stop slave;
set global sql_slave_skip_counter=1;
start slave;

gtid複製

(1)中止slave
mysql> STOP SLAVE;
(2)設置事務號,事務號從Retrieved_Gtid_Set獲取
在session裏設置gtid_next,即跳過這個GTID
mysql> SET @@SESSION.GTID_NEXT= '8f9e146f-0a18-11e7-810a-0050568833c8:4'
(3)設置空事物
mysql> BEGIN; COMMIT;
(4)恢復事物號
mysql> SET SESSION GTID_NEXT = AUTOMATIC;
(5)啓動slave進程
mysql> START SLAVE;

 

 架構變換

讓slave日誌停在同一位置

方法一

master執行

set sql_log_bin=0;

create table larry(id int);

set sql_log_bin=1;

drop table larry;

方法二

start slave sql_thread until

 

1.看看sql_thread在執行什麼?

 

https://blog.csdn.net/fdsfdf3434/article/details/78652084

案例

https://mp.weixin.qq.com/s?__biz=MjM5NzAzMTY4NQ==&mid=2653930276&idx=1&sn=40d37e6b9e7b4cf53b321da745e6dbbd&scene=0#wechat_redirect

相關文章
相關標籤/搜索