环境:系统bsd,标准安装,ports安装的mysql。

主172.16.21.126
从172.16.21.128
vi /etc/rc.conf
添加 mysql_enable="YES"
cp /usr/local/share/mysql/my-large.cnf  /etc/my.cnf
vi /etc/my.cnf
log-bin= mysql-bin               #打开logbin选项以能写到slave的 I/O线程;
server-id=1                      #表示是本机的序号为1,一般来讲就是master的意思.
binlog-do-db= lixl               #表示同步lixl数据库;
grant replication slave  on *.* to 'repl'@'172.16.21.128' identified by  '123456';
flush privileges;
重启主库mysql:/usr/local/etc/rc.d/mysql-server restart
*********************************************************************************
vi /etc/rc.conf
添加 mysql_enable="YES"
cp /usr/local/share/mysql/my-large.cnf  /etc/my.cnf
vi /etc/my.cnf
server-id=2                      #表示是本机的序号为2.
replicate-do-db= lixl               #表示被同步的lixl数据库;
重启从mysql
*********************************************************************************
主库上:show master status
从库上:
stop slave;
mysql>change master to master_host =

'172.16.21.126',master_user='repl',master_password='123456',,master_log_file='mysql-bin.000006',master_log_pos=98; //98

这不能加引号,要不然报错。
start slave;
show slave status\G
*********************************************************************************
被证实的问题,即便我数据库里面没有lixl,搭建的过程,slave本应该是yes的地方也不会报错。
repl这个账号只存在master主机上
*********************************************************************************
主库上操作:
在主库上创建lixl数据库
在lixl库下面创建xf表
create table xf (id int);
insert into xf values(1),(11),(2),(22),(3),(33),(4),(44),(5),(55);

**********************************************************************************
问题:如果我在主库上删除数据,从库上会不会也会减少? 答案:会的。 export
**********************************************************************************
从库上的操作:
delete from lixl.xf where id in (1,2,3,4,5);
**********************************************************************************
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
到目前为止:主从数据之间数据有差异了。
———————————————————————————————————————————

下面在主库上安装percona-tookit,我是在网上下载好的软件,然后传到master上去的。
1.解压 tar xf percona-toolkit-2.1.1.tar.gz

2.cd percona-toolkit-2.1.1
3.perl Makefile.PL 提示perl:command not found
4.cd /usr/ports/lang/perl5.12
5.make install clean
6.cd /usr/ports/databases/p5-DBD-mysql50 &&make install clean    //不然报Warning: prerequisite DBD::mysql 3 not found.
7.perl Makefile.PL&&make&&make install
***********************************************************************************************************************
用pt-table-checksum 比较两台服务器之间数据的差异
**************************************************
ma# /usr/local/bin/pt-table-checksum --nocheck-replication-filters --replicate=lixl.checksums --databases=lixl --tables=xf

h=127.0.0.1,u=root,P=3306
Failed to SET SESSION innodb_lock_wait_timeout=1: DBD::mysql::db do failed: Unknown system variable

'innodb_lock_wait_timeout' [for Statement "SET SESSION innodb_lock_wait_timeout=1"] at /usr/local/bin/pt-table-checksum

line 6009.

The current innodb_lock_wait_timeout value 50 is greater than the --lock-wait-timeout value 1 and the variable cannot be

changed.  innodb_lock_wait_timeout is only dynamic when using the InnoDB plugin.  To prevent this warning, either specify

--lock-wait-time=50, or manually set innodb_lock_wait_timeout to a value less than or equal to 1 and restart MySQL.
Cannot connect to P=3306,h=172.16.21.128,u=root
            TS ERRORS  DIFFS     ROWS  CHUNKS SKIPPED    TIME TABLE
10-24T10:00:48      0      0       10       1       0   0.588 lixl.xf
####****###处理:vi /etc/my.cnf
修改  innodb_lock_wait_timeout =1
**************************************************************************
重启主库mysql服务;更改mysql从库stop slave,change,start slave;重新启动mysql服务器,
没有解决问题,这步
********************************************************************************************
去从库赋权限:mysql> grant all  on *.* to root@172.16.21.126;
主库上:ma# /usr/local/bin/pt-table-checksum --nocheck-replication-filters --replicate=lixl.checksums --databases=lixl --

tables=xf h=127.0.0.1,u=root,P=3306
            TS ERRORS  DIFFS     ROWS  CHUNKS SKIPPED    TIME TABLE
10-24T16:30:14      0      1       18       1       0   0.010 lixl.xf

ma# /usr/local/bin/pt-table-sync h=127.0.0.1, --databases lixl,t=xf h=172.16.21.128 --no-check-slave --exec
*************************************************************************************************

参见:http://www.cnblogs.com/zhoujinyi/archive/2013/05/09/3067045.html
   http://www.percona.com/forums/questions-discussions/percona-toolkit/9577-pt-table-sync-script

   飞鸿无痕的cu博客

pt-table-checksum和pt-table-sync的更多相关文章

  1. NXP ARM Vector Table CheckSum

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

  2. 【转载】alter table move 和 alter table shrink space的区别

    move 和shrink 的共同点1.收缩段2.消除部分行迁移3.消除空间碎片4.使数据更紧密 shrink 语法:  alter table TABLE_NAME shrink space [com ...

  3. How To determine DDIC Check Table, Domain and Get Table Field Text Data For Value?

     How To determineDDIC Check Table, Domain and Get Table Field Text Data For Value? 1.Get Table Fie ...

  4. create table as 和create table like的区别

    create table as 和create table like的区别 对于MySQL的复制相同表结构方法,有create table as 和create table like 两种,区别是什么 ...

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

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

  6. HTML table表格转换为Markdown table表格[转]

    举个栗子,当我想要把这个页面的第一个表格转换成Markdown Table时,怎么做更快,效率更高? 只需简单三步,请看示例: 第一步:复制包含HTML table标签的代码 复制table代码(HT ...

  7. Bootstrap table方法,Bootstrap table事件,配置

    调用 BootStrap Table 方法的语法: $('#table').bootstrapTable('method', parameter); 例如: $('#my_table').bootst ...

  8. hbase删除table时,显示table不存在

    hbase删除table时,显示table不存在,但是创建table时,显示table存在. 解决方案: 清空zookeeper数据.(重新安装zookeeper)

  9. How To Convert A Partitioned Table To A Non-Partitioned Table Using DataPump In 11g (Doc ID 1276049.1)

    How To Convert A Partitioned Table To A Non-Partitioned Table Using DataPump In 11g (Doc ID 1276049. ...

  10. UI5-技术篇-SAP UI5数据表进行了比较:sap.m.Table与sap.ui.table.Table

    https://a.kabachnik.info/sap.m.table-vs-sap.ui.table.table-features-compared.html SAP UI5数据表进行了比较:sa ...

随机推荐

  1. js修改页面动态添加input框显示与按钮可编辑

    1. <%@ page language="java" contentType="text/html;charset=UTF-8"%> <%@ ...

  2. Crypto Challenge Set 1解题报告

    1.Convert hex to base64 题意:给出一个hex编码过的字符串,将它进行base64加密 解题关键:直接利用base64库函数实现 import base64 str1=" ...

  3. 【机器学习】随机森林RF

    随机森林(RF, RandomForest)包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定.通过自助法(boot-strap)重采样技术,不断生成训练样本和测试样本,由训练样本 ...

  4. SQL Server(三)

    一.数据库操作 create database 数据库名称 ——创建drop database 数据库名称 ——删除use 数据库名称 ——使用go 两条SQL语句之间分隔 二.表的操作 create ...

  5. HDU2874【LCA(模板)】

    第一题LCA,代码参考自:Ice_Crazy 思路: 这个最短路算法是想都别想了,可以看出这幅图就是树嘛,那么对于查询就是求树上两个结点最短距离. 这里就是利用LCA的tarjan离线算法. 算法的大 ...

  6. JS 检查是否在微信浏览器

    /** * 检查是否在微信浏览器 * zengkai */ function isWeixinBrowser(){ var ua = navigator.userAgent.toLowerCase() ...

  7. 51nod1060(反素数&dfs)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1060 题意:中文题诶- 思路: 这里用到了反素数的性质: 对 ...

  8. python入门的基本历程

    Python入门 1.1环境安装 python官网下载,安装之后添加环境变量. 1.2集成开发环境 PyCharm官网下载,安装后:new project-﹥pure python 设置python解 ...

  9. Programming Ruby 阅读笔记

    在Ruby中,通过调用构造函数(constructor)来创建对象 song1=Song.new("Ruby") Ruby对单引号串处理的很少,除了极少的一些例外,键入到字符串字面 ...

  10. angularJs 自定义指令传值---父级与子级之间的通信

    angularJs自定义指令用法我忽略,之前有写过,这里只说一下父子级之间如何传值: 例如: 模块我定义为myApp,index.html定义 <my-html bol-val="bo ...