pt-table-sync高效同步mysql表数据

来源:互联网 发布:网络远程教育证书 编辑:程序博客网 时间:2024/06/07 17:48


1. 功能介绍:

高效同步mysql表的数据

2. 用法介绍:

pt-table-sync [OPTION…] DSN [DSN…]

原理: 总是在主上执行数据的更改,再同步到从上,不会直接更改成从的数据,在主上执行更改是基于主上现在的数据,不会更改主上的数据。注意使用之前先备份你的数据,避免造成数据的丢失。 执行excute之前最好先换成–print或者–dry-run查看一下会变更哪些数据.

3. [OPTION..]- 选项参数

--replicate=  :指定通过pt-table-checksum得到的表,这2个工具差不多都会一直用。
--databases= : 指定执行同步的数据库,多个用逗号隔开。
--tables= :指定执行同步的表,多个用逗号隔开。
--sync-to-master :指定一个DSN,即从的IP,他会通过show processlist或show slave status 去自动的找主。
h=127.0.0.1 :服务器地址,命令里有2个ip,第一次出现的是Master的地址,第2次是Slave的地址。
u=root :帐号。
p=123456 :密码。
--print :打印,但不执行命令。
--execute :执行命令。

4. 实例:

实例1:

 >>> pt-table-sync --replicate=radius.checksums h=192.168.7.131,u=root,p=123456 h=192.168.7.132,u=root,p=123456 --print
DELETE FROM `activity`.`t` WHERE `id`='8' LIMIT 1 /*percona-toolkit src_db:activity src_tbl:t src_dsn:h=192.168.7.131,p=...,u=root dst_db:activity dst_tbl:t dst_dsn:h=192.168.7.132,p=...,u=root lock:1 transaction:1 changing_src:radius.checksums replicate:radius.checksums bidirectional:0 pid:15034 user:root host:localhost.localdomain*/;DELETE FROM `activity`.`t` WHERE `id`='9' LIMIT 1 /*percona-toolkit src_db:activity src_tbl:t src_dsn:h=192.168.7.131,p=...,u=root dst_db:activity dst_tbl:t dst_dsn:h=192.168.7.132,p=...,u=root lock:1 transaction:1 changing_src:radius.checksums replicate:radius.checksums bidirectional:0 pid:15034 user:root host:localhost.localdomain*/;REPLACE INTO `activity`.`t`(`id`) VALUES ('6') /*percona-toolkit src_db:activity src_tbl:t src_dsn:h=192.168.7.131,p=...,u=root dst_db:activity dst_tbl:t dst_dsn:h=192.168.7.132,p=...,u=root lock:1 transaction:1 changing_src:radius.checksums replicate:radius.checksums bidirectional:0 pid:15034 user:root host:localhost.localdomain*/;
 >>> pt-table-sync --replicate=radius.checksums h=192.168.7.131,u=root,p=123456 h=192.168.7.132,u=root,p=123456 --execute
查看是否还有数据不一致的情况
>>> pt-table-checksum --nocheck-replication-filters --databases=activity --replicate=radius.checksums --create-replicate-table --no-check-binlog-format --host=192.168.7.131 --port=3306 -uroot -p123456
            TS ERRORS  DIFFS     ROWS  CHUNKS SKIPPED    TIME TABLE07-31T16:36:34      0      0        6       1       0   0.033 activity.t

个人微博:http://weibo.com/wjrtaojiang,各种优惠券走起!!!

原创粉丝点击