您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“MySQL中second behind master不準確怎么處理”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“MySQL中second behind master不準確怎么處理”這篇文章吧。
binglog日志中event的event header(event header的前4個字節)記錄了event的時間戳,SQL回放的時間減去這個event產生的時間,就是Seconds_Behind_Master的時間。但是這個時間不準確,線上有時延時是幾千秒(3600s),但是突然就變成了0,有這種情況。
pt-heartbeat,下載通用二進制包
創建監控數據庫:
mysql> create database monitor; Query OK, 1 row affected (0.02 sec)
下載安裝
./pt-heartbeat -D monitor --update -uroot -p oracle -P3306 -h 10.10.60.60 --create-table --daemonize
參數的意義:
--update表示要實時更新時間戳的數據,這就是和之前的seconds_behind_master不同,seconds_behind_master并不是實時更新。
--daemonize放到后臺執行
--create-table第一次需要創建heartbeat名的表。
pt-heartbeat創建一個帶有時間戳的表,并且因為是主從,這樣表會復制到從上。
并且我們可以看到,每次查詢的時候時間戳和position都是變化的,
備庫上heartbeat表的ts列時間和主庫heartbeat表中ts列的時間差就是主從復制的延遲時間
并且工具中還提供了monitor監控工具。
監控:
./pt-heartbeat -D monitor --monitor --master-server-id 603306 -uroot -p oracle -P3306 -h 10.10.60.60
看精確的看第一列,后幾列分別為1min、5min、15min內的延遲時間。
以上是“MySQL中second behind master不準確怎么處理”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。