[LNMP]Mysql主從一致性檢查與修復

做過mysql主從維護都知道,一旦出現主從不同步后比較麻煩,而跳過錯誤的方法可能會導致數據的不一致,這對于需要嚴格數據一致性的應用要求來說是不可接受的,手工方式重新做同步步驟比較多,以下方法是通過一個工具來完成一致性修復的問題,可以大大節省時間。

Percona Toolkit

使用工具


Percona Toolkit:官網鏈接

安裝


  1. 依賴安裝
    <pre>
    yum install -y perl-DBI perl-DBD-MySQL perl-Time-HiResperl-IO-Socket-SSL
    </pre>
  2. 工具安裝
    <pre>
    wget percona.com/get/percona-toolkit.rpm
    rpm -Uvh percona-toolkit.rpm
    </pre>
  3. 創建日志數據庫
    根據官網文檔創建數據表結構 ,示例中:test.checksums 為記錄結果的表。

通過工具獲取優化建議


  • 分析mysql配置并建議:pt-variable-advisor --user=root localhost
  • 慢查詢日志分析:pt-query-digest/data/DB/mysql/mysql-slow.log(具體路徑有所不同)

常規檢查


  • mysql服務狀態: pt-mysql-summary--host=localhost --user=root
  • 主從狀態監測: pt-slave-find --host=localhost --user=root
  • mysql死鎖監測: pt-deadlock-logger--host=localhost --user=root

一致性檢查


  • pt-table-checksum --replicate=test.checksums--host=localhost --user=root --databases=test


    檢查結果

一致性修復


  • pt-table-sync--execute --replicate=test.checksums --charset=utf8 h=localhost u=root


    修復結果

注:同步前做好相應備份工作,并且避開業務高峰期操作。
整理于2014/04

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容