pt-table-checksums监测Mysql主从数据一致性

官方网站:https://www.percona.com/doc/percona-toolkit/2.1/pt-table-checksum.html#dsn-options

环境
主:10.50.12.33
从:10.50.12.35
****************************主从差异现象模拟****************************************
主:
mysql> create database gaoquan;
mysql> use gaoquan;
mysql> create table t1(id int PRIMARY KEY not null auto_increment,name varchar(10),age int);
mysql> insert into t1(name,age) values(‘a‘,32),(‘b‘,33),(‘c‘,34);

从:
mysql> use gaoquan
mysql> delete from t1 where name=‘a‘;
*****************************主从数据差异校验********************************************
主操作:
mysql -S /tmp/mysql3336.sock
######创建cheksums账号
mysql> GRANT SELECT, PROCESS, SUPER, REPLICATION SLAVE ON *.* TO ‘checksums‘@‘10.50.12.%‘ IDENTIFIED BY ‘checksums‘;
######创建从库信息表dsns
mysql> use test;
mysql> create table dsns(id int(11) not null auto_increment,parent_id int(11) default null,dsn varchar(255) not null,primary key(id));
######将从库信息插入dsns表中,多从就插入多条记录
mysql> INSERT INTO dsns (parent_id,dsn) values(1,‘h=10.50.12.35,u=checksums,p=checksums,P=3336‘);
######下载pt-tools工具
wget percona.com/get/percona-toolkit.tar.gz
tar -zxf percona-toolkit.tar.gz
cd percona-toolkit/bin
######执行校验
./pt-table-checksum --nocheck-replication-filters --replicate=test.checksums --host=10.50.12.33 --port 3336 --databases=gaoquan -uchecksums -pchecksums --no-check-binlog-format --recursion-method=dsn=h=10.50.12.33,D=test,t=dsns
######结果查询,this_crc != master_crc,说明主从数据有差异
mysql -h 10.50.12.35 -uchecksums -P3336  -p -e "select * from test.checksums"
+---------+-----+-------+------------+-------------+----------------+----------------+----------+----------+------------+------------+---------------------+
| db      | tbl | chunk | chunk_time | chunk_index | lower_boundary | upper_boundary | this_crc | this_cnt | master_crc | master_cnt | ts                  |
+---------+-----+-------+------------+-------------+----------------+----------------+----------+----------+------------+------------+---------------------+
| gaoquan | t1  |     1 |   0.001375 | NULL        | NULL           | NULL           | afa2742d |        3 | 9cf2c2d4   |          4 | 2015-12-25 16:17:35 |
+---------+-----+-------+------------+-------------+----------------+----------------+----------+----------+------------+------------+---------------------+

时间: 2024-10-13 22:49:39

pt-table-checksums监测Mysql主从数据一致性的相关文章

percona-toolkit之pt-table-sync修复Mysql主从数据一致性

下载及用户赋权参考上篇文章percona-toolkit之pt-table-checksums检测Mysql主从数据一致性 先使用pt-table-checksums检测数据一致性,然后使用pt-table-sync进行主从一致性修复,注意修复的表必须有主键或者唯一索引 主库bash下执行: ./pt-table-checksum --nocheck-replication-filters --replicate=test.checksums --host=10.50.12.33 --port

pt-heartbeat监测mysql主从同步延迟

pt-heartbeat监测mysql主从同步延迟: 安装percona toolkit(pt-heartbeat为该软件的子命令): http://repo.percona.com/release/6/RPMS/x86_64/percona-toolkit-3.0.13-1.el6.x86_64.rpm yum install perl-DBD-MySQL yum install perl-IO-Socket-SSL yum install perl-TermReadKey 在主库上创建hea

基于pt-table-checksum和pt-table-sync实现MySQL主从数据一致性校验

在基于MySQL逻辑复制原理的下的主从架构,经常会由于某些缘故产生主从数据不一致,从而导致主从复制进程报错中断.而基于定期去检查从库的show slave status\G的IO线程和SQL线程的状态,只能确认当前replication是正常的,却无法确认当前主从数据是否一致.幸好percona公司提供pt工具包,其中的pt-table-checksum和pt-table-sync相互配合,在基于一定的前提条件下,可以较好的完成主从数据一致性校验和修复,而不会较大程度上影响线上数据库的性能. p

mysql主从数据一致性校验及纠错工具

目录 1.概述 2.percona-tooldit工具的安装 3.新建用户 4.pt-table-checksum使用 5.pt-table-sync使用 6.个人总结 1.概述 假如你是一位运维人员,假如你生产环境上部署了mysql系统,再假如你线上的mysql是基于主从复制的架构,那恭喜你,它将可能会带给你主从数据不一致的"恶运". 由于mysql复制架构原生特性,主从服务器上的数据不可能做"同步"复制,所以延时是必然会有的,即使是不那么繁忙的服务器上,在业务不

利用Python监测MySQL主从状态

探测MySQL主从状态,如果从未同步,则发邮件通知运维人员.利用定时任务秒级监测! # -*- coding: utf-8 -* #! /usr/bin/env python from fabric.api import * from fabric.colors import * from fabric.context_managers import * from fabric.contrib.console import confirm import string import smtplib

pt-table-checksum校验mysql主从数据一致性

主从数据的一致性校验是个头疼的问题,偶尔被业务投诉主从数据不一致,或者几个从库之间的数据不一致,这会令人沮丧.通常我们仅有一种办法,热备主库,然后替换掉所有的从库.这不仅代价非常大,而且类似治标不治本的方案,让人十分不安.因此我们需要合适的工具,至少帮我们回答下面三个问题: 是从库延迟导致了用户看到的数据不一致,还是真的主从数据就不一致? 如果不一致,这个比例究竟多大? 下次还会出现吗? 回答清楚这几个问题,有助于我们决定是否修复,以及修复的方式,还可以帮我们找出不一致的数据,进而定位问题根源.

mysql主从同步(3)-percona-toolkit工具(数据一致性监测、延迟监控)使用梳理

转自:http://www.cnblogs.com/kevingrace/p/6261091.html 在mysql工作中接触最多的就是mysql replication mysql在复制方面还是会有一些常规问题: 比如主库宕机或者从库宕机有可能会导致复制中断,通常需要进行人为修复, 或者很多时候需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样. 这种情况下就需要使用percona-toolkit工具的pt-table-checksum组件来检查主从数据的一致性:如果发现不一致的

mysql主从一致性校验工具-pt

一.环境 1.系统环境 系统 IP 主机名 说明 server_id centos6.7 MasterIP master 数据库:主 177  centos6.7 SlaveIP slave 数据库:从 148 2.软件环境 软件 版本 安装方式 说明 pt工具 3.0.4 编译安装 这是一个综合工具包,包含很多pt命令 mysql数据库 5.6.37 yum安装 主从环境 3.需要用到库 库名 表名 用途  percona checksums 存储pt命令监测的结果,第一次执行检测命令时会自己

Mysql 主从数据库一致性检查与修复

利用pt-table-checksum 检查主从的一致性,pt-table-sync实现主从数据一致性修复 一.percona-toolkit的下载安装:需要先安装其它依赖环境包...shell> perl -MCPAN -e 'install DBI'shell> perl -MCPAN -e 'install DBD::mysql'shell> perl -MCPAN -e 'install Term::ReadKey'顺便说一下,我在安装某些Perl模块的时候,出现类似下面的错误提