《Mysql實例利用pt-heartbeat監控MySQL的復制延遲詳解》要點:
本文介紹了Mysql實例利用pt-heartbeat監控MySQL的復制延遲詳解,希望對您有用。如果有疑問,可以聯系我們。
MYSQL教程pt-heartbeat
MYSQL教程數據庫做主從復制時,復制狀態、數據延遲是否正常是非常關鍵的指標,那么如何對其進行監控呢?
MYSQL教程pt-heartbeat 是 PERCONA 開發的一個工具集中的一個,專門用來監控MySQL和PostgreSQL的復制延遲.
MYSQL教程比較成熟,例如Uber等大型公司都在使用.
MYSQL教程下面來話不多說,來一起看看詳細的介紹:
MYSQL教程監控原理
MYSQL教程在 master 中建一個 heartbeat 表,其中有一個 時間戳 字段,pt-heartbeat 會周期性的修改時間戳的值.
MYSQL教程slave 會復制 heartbeat表,其中就包含了 master執行修改動作的時間戳,對其和 slave 的本地時間進行對比,得到一個差值,就是復制延遲的值,從而判斷復制狀態是否正常,以及延遲時間是否符合預期.
MYSQL教程pt-heartbeat 是根據實際的復制記錄來計算的,所以他不關心你使用什么方式進行復制.
MYSQL教程pt-heartbeat 可以監控任意深度的復制層級,因為 heartbeat 表中有 server_id 字段,在監控某個 slave 的延遲時可以指定是參考哪個 server_id,例如想知道這個 slave 與其 master 的 master 的延遲情況,指定目標 master的 server_id 就可以了.
MYSQL教程因為 pt-heartbeat 嚴格依賴時間,所以需要注意 master 與 slave 的時間一定要同步.
MYSQL教程使用示例
MYSQL教程對 master 執行創建心跳表的操作,并執行循環 update 操作,執行命令:
MYSQL教程
MYSQL教程其中指定了 master 的連接信息, --create-table -D master1
是指在 master1這個數據庫中創建心跳表,后面的參數指定執行 update 的時間間隔.
MYSQL教程然后就可以對 slave 進行監控了,執行命令:
MYSQL教程
MYSQL教程--monitor 參數指明是要進行監控,之前的是監控目標的信息,包括 slave 的連接信息、數據庫和表名.
MYSQL教程輸出信息示例:
MYSQL教程
MYSQL教程0.00s 表示現在的延遲信息,[ 0.00s, 0.00s, 0.00s ] 表示 1m,5m,15m 的平均值.
MYSQL教程安裝過程
MYSQL教程下面是在CentOS7下的安裝過程:
MYSQL教程
MYSQL教程pt-heartbeat 的官方文檔地址:https://www.percona.com/doc/percona-toolkit/2.1/pt-heartbeat.html
MYSQL教程總結
MYSQL教程以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的贊助,如果有疑問大家可以留言交流,謝謝大家對維易PHP的支持.
《Mysql實例利用pt-heartbeat監控MySQL的復制延遲詳解》是否對您有啟發,歡迎查看更多與《Mysql實例利用pt-heartbeat監控MySQL的復制延遲詳解》相關教程,學精學透。維易PHP學院為您提供精彩教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/8085.html