一.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

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

pt-table-checksum和pt-heartbeat的使用的更多相关文章

  1. pt和px区别 pt是逻辑像素,px是物理像素

    pt和px区别 pt是逻辑像素,px是物理像素字体大小的设置单位,常用的有2种:px.pt.这两个有什么区别呢?先搞清基本概念:px就是表示pixel,像素,是屏幕上显示数据的最基本的点:pt就是po ...

  2. NXP ARM Vector Table CheckSum

    Signature Creator for NXP Cortex-M Devices Algorithm for creating the checksum The reserved Cortex-M ...

  3. 必备:常用px,pt,em换算表(转)

    常用px,pt,em换算表 pt (point,磅):是一个物理长度单位,指的是72分之一英寸. px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理 ...

  4. px,pt,em,rem

    一直对px,pt,em,rem的认识有误区,现整理一下,供参考.之后还得整理下关于dpi相关的知识. px(pixe,像素l):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物 ...

  5. 常用px,pt,em换算表

    pt (point,磅):是一个物理长度单位,指的是72分之一英寸. px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(D ...

  6. 国内三大PT(Private Tracker)站分析

    除这一行外,下面全部内容都是转载.出处不明. 国内三大PT(Private Tracker)站分析 先郑重的声明一下:本文以下的内容所有是复制粘贴的,不代表老夫的观点. 事实上内容我也没细致看. 贴这 ...

  7. CSS长度单位及区别 em ex px pt in

    1.         css相对长度单位 Ø         em          元素的字体高度 Ø         ex           字体x的高度 Ø         px        ...

  8. 常用px,pt,em换算及区别

    pt (point,磅):是一个物理长度单位,指的是72分之一英寸. px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(D ...

  9. PT 转 PX

    pt (point,磅):是一个物理长度单位,指的是72分之一英寸. px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(D ...

  10. easyUI 创建有复选框的table.datagrid

    table : function(data){ pt.v.table.datagrid({ // singleSelect:true, height:295, columns:[[ {field:'x ...

随机推荐

  1. 如何用angularjs给从后台传来数据添加链接

    <!DOCTYPE html> <html ng-app="myApp"> <head> <meta charset="UTF- ...

  2. python之路四

    内建函数 内建函数详解: 1. abs(x) abs()函数返回数字(可为普通型.长整型或浮点型)的绝对值.如果给出复数,返回值就是该复数的模.例如: >>>print abs(-2 ...

  3. PHP PHPUnit的简单使用

    1.window安装pear的教程:http://jingyan.baidu.com/article/ca41422fd8cf3d1eae99ed3e.html 2.在工作目录下,放两个文件: 1)C ...

  4. jstl param url redirect import

    import标签 import标签用来导入其他页面 属性: * url :引入页面的路径 * context :工程名 * var :将引入的页面保存到一个变量中 * scope :保存到一个作用域中 ...

  5. Python网络编程之线程,进程

    一. 线程: 基本使用 线程锁 线程池 队列(生产者消费者模型) 二. 进程:  基本使用  进程锁 进程池 进程数据共享 三. 协程: gevent greenlet 四. 缓存: memcache ...

  6. 15. 3Sum_左右开工,遍历找出符合目标的数字

    题目: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find al ...

  7. Android 动态生成 EditTest

    这几天,开始一个项目,需要一个小效果,就是一个输入邮箱地址的EditTest 需要动态的添加.默认有两个,然后最多5个,手机的屏幕总是有限的 好的 ,这就上代码了 布局文件 <LinearLay ...

  8. c语言中遇到“警告: the `gets' function is dangerous and should not be used.”的解决办法

    写于2016年12月1日. 在用c的库函数gets(str)时,编译出现该提示.原因在于linux下gcc不支持gets命令,要换成fgets(arr,size,stdin).

  9. node+fis3搭建

    node安装: 到https://nodejs.org/en/download/releases下载编译好的包, 如:https://nodejs.org/download/release/v4.4. ...

  10. 第二十八篇:SOUI中自定义控件开发过程

    在SOUI中已经提供了大部分常用的控件,但是内置控件不可能满足用户的所有要求,因此一个真实的应用少不得还要做一些自定义控件. 学习一个新东西,最简单的办法就是依葫芦画瓢.事实上在SOUI系统中内置控件 ...