溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql復制延時排查

發布時間:2020-07-30 09:00:33 來源:網絡 閱讀:375 作者:Darren_Chen 欄目:MySQL數據庫

主從延時如果排查?

1. show slave status\G,看一下relay_master_log_file & exec_master_log_pos數值有沒有變化(如果是GTID復制也可以看executed_gtid_set的事物號有沒有增長 ),如果一直不變化,說明有大事物,導致sql_thread線程hang住,這個時候需要查看主庫的binlog,看一下是什么事物:

 mysqlbinlog -v --base64-output=decode-rows --start-position= exec_master_log_pos   relay_master_log_file | less

然后等大事物結束或者回滾;


這次事物結束后,如果下次從庫不能接受這樣延時,怎么辦,有什么根本的解決方法?

(1)把從庫對讀要求比較高的業務切換到主庫上;

(2)以后更新大事物拆分成多個小事物,比如說一次更新20萬條改為一次更新10萬條;


2.  如果relay_master_log_file & exec_master_log_pos數值增長很慢,怎么辦?

(1)解析對應的binlog: mysqlbinlog -v --base64-output=decode-rows --start-position= exec_master_log_pos   relay_master_log_file | less

查看對應的表,看看表有沒有主鍵,索引等結構


(2)檢查系統是不是過載cpu,memory,io,


io可以通過工具iotop和pt-ioprofile查看

如果發現是mysql庫下的slave_relay_log_info.ibd文件占用IO很高,可以考慮調大sync_relay_log_info,讓這個文件同步不要太頻繁。


cpu可以通過top命令查看:

如果user比較高,可以show processlist查看,慢日志,有沒有大量的排序,主要是sql語句

如果sys很高的話,一般來說,因為:

1、發生swap

2、數據庫內發生嚴重的鎖等待

3、用了ssd等設備,產生大量中斷,或者網卡中斷(cpu中斷不均衡)

4、MySQL里頻繁創建連接及關閉

5、頻繁用到timestamp列,且time_zone=SYSTEM


memory:

free -gt

vmstat


看看mysql的errorlog,主從的server-id是否不一樣


如何查看網卡是否連接:

ifconfig |grep up

dmesg|grep eth


以上方法都不行的話,可以嘗試其他方法:

使用工具perf top

pstack `pidof mysqld`

ipmitool

硬件方面raid卡等


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女