• mysql 案例 ~ pt校验工具介绍


    简介:今天咱们来聊聊PT校验工具pt-table-checksum

    注意事项:
        1、 根据测试,需要一个即能登录主库,也能登录从库的账号;
        2、 只能指定一个host,必须为主库的IP;
        3、 在检查时会向表加S锁;
        4、 如果master和slave的binlog日志不是STATEMENT格式,要用--no-check-binlog-format选项
        5、 运行之前需要从库的同步IO和SQL进程是YES状态。
        6、 表要有主键索引或唯一键索引
    用户权限

        GRANT SELECT, PROCESS, SUPER, REPLICATION SLAVE ON *.* TO 'god'@'%' IDENTIFIED BY 'god';//需要检验的表
        GRANT ALL PRIVILEGES ON test.* TO 'god'@'10.255.%' IDENTIFIED BY 'god';//对checksum表的生成
    相关问题
       1 对于相关从库发现的方法
          如果要对所有从库做校验并且从库端口都是3306直接采用processlist即可
          否则采用dsns方法
         1 建立相关表
             CREATE TABLE `dsns` ( `id` int(11) NOT NULL AUTO_INCREMENT, `parent_id` int(11) DEFAULT NULL, `dsn` varchar(255) NOT NULL, PRIMARY KEY (`id`) );
          2 插入从库信息
             INSERT INTO dsns (parent_id,dsn) values(1, "h=从库IP,u=root,p=XX,P=3306");依次类推
          3 生成语句指定
             -recursion-method=dsn=h=IP,D=test,t=dsns
     2 相关报错
       Waiting for the --replicate table to replicate to 表示从库延迟严重,没有相关checksums表
       connect not to 表示连接不到从库,可能是从库端口有问题,按照上述方式解决
       Pausing because Threads_running 表示主库负载太高,可以调大load值或者等待负载降低
     3 正则匹配
       --databases-regex=d_ts.* 匹配d_ts的表
     4 对线上的影响
      这个是很多人都关心的问题,首先它对表增加的是S锁 其次它是按照chunk为单位检测的 最后pt工具一些针对主库负载都有警告限制,如果超过这个阈值,就会暂停任务
    常用命令范式
      1 pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --replicate=test.checksums --recursion-method=dsn=h=主库IP,D=test,t=dsns --databases=db --tables=table h=主库IP,u=god,p=god,P=3306
      2 pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --replicate=test.checksums --recursion-method=processlist --databases=db --tables=table h=主库IP,u=god,p=god,P=3306

  • 相关阅读:
    UNIT THREE
    UNIT TWO
    UNIT ONE
    实验九 根据材料编程
    实验五 编写、调试具有多个段的程序
    实验 四 [bx]和loop的使用
    实验二 用机器指令和汇编指令编程
    实验三 编程、编译、连接、跟踪
    实验一 查看CPU和内存,用机器指令和汇编指令编程
    汇编语言第5~8章知识总结
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/9177651.html
Copyright © 2020-2023  润新知