• pt-table-checksum和pt-heartbeat的使用


    一.pt-table-checksum

    1.主从上均新建账户
    GRANT SELECT, PROCESS, SUPER, REPLICATION SLAVE ON *.* TO 'checksum'@'192.168.1.%' IDENTIFIED BY 'xxx';


    2.主上新建percona数据库

    3.对percona数据库赋予checksum账户的所有权限
    GRANT ALL PRIVILEGES ON `percona` . * TO 'checksum'@'192.168.118.126' WITH GRANT OPTION ;


    4.主上执行检查表
    pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --set-vars innodb_lock_wait_timeout=50 --replicate=percona.checksums --databases=db07 --tables=test,trade,point,play h=192.168.1.126,u=checksum,p='xxx',P=3306

    参数解释:
    --databases
    指定校验的库,多个库用逗号(,)分隔
    --tables
    指定检查的表,多个表用,隔开
    --nocheck-replication-filters
    忽略replication-do-db规则
    --replicate=test.checksums
    在test库下创建checksums表,并将数据写入
    --recursion-method=none
    指定复制检查的方式,默认情况下使用SHOW PROCESSLIST,如果非标准的3306端口,就使用SHOW SLAVE HOSTS的方式,推荐使用dsn方式,手动指定

    检查库中所有表在主从上是否同步
    pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --set-vars innodb_lock_wait_timeout=50 --replicate=percona.checksums --databases=db07 h=192.168.1.126,u=checksum,p='xxx',P=3306


    输出结果:
    TS ERRORS DIFFS ROWS CHUNKS SKIPPED TIME TABLE
    12-05T19:39:40 0 0 4 1 0 0.114 db_77313.test


    DIFFS:
    0代表主从数据一致
    1代表不一致


    *如果出现错误:
    Waiting for the --replicate table to replicate to XXX的问题出在 percona.checksums 表在从库不存在,拷贝主库checksums建表sql语句,在从库对应的percona库中执行建表

    二.pt-heartbeat
    1.有时候我们需要查看从服务器落后主服务器多少,这个时候就需要pt-heartbeat

    2.使用pt-table-checksum建立的账户

    3.主上执行:
    pt-heartbeat --update -h 192.168.1.126 -u checksum -p xx --database percona --create-table


    一直在前台运行
    pt-heartbeat --update -h 192.168.1.126 -u checksum -p xx --database percona


    在后台运行
    pt-heartbeat --update -h 192.168.1.126 -u checksum -p xx --database percona --daemonize

    如果需要停止

    pt-heartbeat --stop

    再次运行,则需要删除tmp下的文件

    rm -rf /tmp/pt-heartbeat-sentinel

    4.从上执行(其中ip账户信息均为从的)

    一直监控:

    pt-heartbeat -D percona --monitor -h 192.168.1.84 --master-server-id=10 -u checksum -p xxx

    输出:
    0.00s [ 0.00s, 0.00s, 0.00s ]

    分别表示:
    实时延迟 [ 1分延迟,5分延迟,15分延迟]

    监控一次:

    pt-heartbeat -D percona --check -h 192.168.1.84 --master-server-id=10 -u checksum -p xxx


    需要注意的是,你必须确保心跳表能够被同步到从库,只有这样子,检查才会有意义.

  • 相关阅读:
    bzoj 3779: 重组病毒【LCT+线段树维护dfs序】
    bzoj 4817: [Sdoi2017]树点涂色【树链剖分+LCT】
    bzoj 4818: [Sdoi2017]序列计数【容斥原理+dp+矩阵乘法】
    bzoj 1853: [Scoi2010]幸运数字&&2393: Cirno的完美算数教室【容斥原理】
    bzoj 3589: 动态树【树链剖分+容斥】
    bzoj 1042: [HAOI2008]硬币购物【容斥原理+dp】
    bzoj 4517: [Sdoi2016]排列计数【容斥原理+组合数学】
    好听的英文歌曲
    颜色色环
    颜色模式
  • 原文地址:https://www.cnblogs.com/itfenqing/p/6136163.html
Copyright © 2020-2023  润新知