[LNMP]Mysql主从一致性检查与修复

做过mysql主从维护都知道,一旦出现主从不同步后比较麻烦,而跳过错误的方法可能会导致数据的不一致,这对于需要严格数据一致性的应用要求来说是不可接受的,手工方式重新做同步步骤比较多,以下方法是通过一个工具来完成一致性修复的问题,可以大大节省时间。

[LNMP]Mysql主从一致性检查与修复_第1张图片
Percona Toolkit

使用工具


Percona Toolkit:官网链接

安装


  1. 依赖安装

    yum install -y perl-DBI perl-DBD-MySQL perl-Time-HiResperl-IO-Socket-SSL
  2. 工具安装

    wget percona.com/get/percona-toolkit.rpm
    rpm -Uvh percona-toolkit.rpm
  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

你可能感兴趣的:([LNMP]Mysql主从一致性检查与修复)