免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 飞鸿无痕
打印 上一主题 下一主题

percona-toolkit工具包的使用教程【原创】 [复制链接]

论坛徽章:
8
CU大牛徽章
日期:2013-09-18 15:20:48CU大牛徽章
日期:2013-09-18 15:20:58CU大牛徽章
日期:2013-09-18 15:21:06CU大牛徽章
日期:2013-09-18 15:21:12CU大牛徽章
日期:2013-09-18 15:21:17天秤座
日期:2013-10-30 14:01:03摩羯座
日期:2013-11-29 18:02:31luobin
日期:2016-06-17 17:46:36
11 [报告]
发表于 2012-06-12 15:27 |只看该作者
回复 10# 飞鸿无痕


最近CU有问题,丢点数据时小事了。

论坛徽章:
2
2015年迎新春徽章
日期:2015-03-04 09:55:28IT运维版块每日发帖之星
日期:2016-07-29 06:20:00
12 [报告]
发表于 2012-06-12 20:32 |只看该作者
pt-table-checksums工具我在用,2.*版本比1.*好用的多.
下面是一些笔记

准备工作:
1.创建用户checksums
权限:
GRANT SELECT, PROCESS, SUPER, REPLICATION SLAVE ON *.* TO 'checksums'@'192.168.250.249' IDENTIFIED BY 'xxxx';
select        查看所有库的表,原理可加 --explain选项查看
process        show processlist
super        set binlog_format='statement'
replication slave        show slave hosts
连接范围:
允许master连接(当前写库)


2.参数解释:
DSN        h='192.168.250.249',u='checksums',p='xxxx',P=3306
-d        指定校验的库
--nocheck-replication-filters        忽略replication-do-db规则
--replicate=test.checksums        在test库下创建checksums表,并将数据写入


使用举例:
1.登录主库,增加授权
GRANT SELECT, PROCESS, SUPER, REPLICATION SLAVE ON *.* TO 'checksums'@'192.168.250.249' IDENTIFIED BY 'xxxx'

2.登录主库,执行pt-table-checksums脚本
# 只检查mysql库
pt-table-checksum h='192.168.250.249',u='checksums',p='xxxx',P=3306 -d mysql  --nocheck-replication-filters --replicate=test.checksums
# 只检查mysql库,但是过滤mysql.user表
pt-table-checksum h='192.168.250.249',u='checksums',p='xxxx',P=3306 -d mysql --ignore-tables=mysql.user --nocheck-replication-filters --replicate=test.checksums

问题处理:
1.在主库上执行
pt-table-checksum h='192.168.250.249',u='checksums',p='xxxx',P=3306 -d mysql --nocheck-replication-filters --replicate=test.checksums
需要注意test.checksums是否存在,如果存在,则手工删除,否则会报如下错误
06-07T16:54:23 User does not have all privileges on --replicate table `test`.`checksums`.

2.binlog_format问题
06-07T19:06:07 Error checksumming table mysql.columns_priv: Error executing checksum query: Checksum query for table mysql.columns_priv caused MySQL error 1592:
    Level: Note
     Code: 1592
  Message: Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. REPLACE...
......
SELECT is unsafe because the order in which rows are retrieved by the SELECT determines which (if any) rows are replaced. This /*checksum table*/
该问题与复制过滤器replicate-do-db 和 pt-table-checksums,innodb_strict_mode             = 1均没有关系
脚本的bug,在mysql 5.5.18版本之后,都会出现这个问题
https://bugs.launchpad.net/percona-toolkit/+bug/919499

下载最新的版本,已经修复
http://bazaar.launchpad.net/~per ... n/pt-table-checksum


索引问题
06-07T21:19:31 Cannot checksum table db.table: There is no good index and the table is oversized. at ./pt-table-checksum line 3899.

论坛徽章:
0
13 [报告]
发表于 2012-07-09 14:21 |只看该作者
请教一下lz,用pt-table-checksum在主库上执行,从库还需要执行吗?从库的checksum表主库同步过来的?原理是什么呢

论坛徽章:
0
14 [报告]
发表于 2012-07-10 09:50 |只看该作者
飞鸿无痕 发表于 2012-06-06 11:42
percona-toolkit工具包的使用教程
      本文收集了percona-toolkit工具包中比较常用的工具集,写成教程, ...


在吗?

论坛徽章:
0
15 [报告]
发表于 2012-07-10 18:06 |只看该作者
回复 13# o0o520


    看教程了吗?? 教程学得很清楚了!

论坛徽章:
0
16 [报告]
发表于 2012-07-10 23:08 |只看该作者
非常不错  感谢翻译整理

论坛徽章:
0
17 [报告]
发表于 2012-07-12 16:29 |只看该作者
回复 1# 飞鸿无痕

{:3_183:} 顶
   

论坛徽章:
0
18 [报告]
发表于 2012-07-12 16:35 |只看该作者
写的不错顶一个

论坛徽章:
8
CU大牛徽章
日期:2013-09-18 15:20:48CU大牛徽章
日期:2013-09-18 15:20:58CU大牛徽章
日期:2013-09-18 15:21:06CU大牛徽章
日期:2013-09-18 15:21:12CU大牛徽章
日期:2013-09-18 15:21:17天秤座
日期:2013-10-30 14:01:03摩羯座
日期:2013-11-29 18:02:31luobin
日期:2016-06-17 17:46:36
19 [报告]
发表于 2014-05-19 15:31 |只看该作者
赞一个

论坛徽章:
0
20 [报告]
发表于 2014-07-28 16:20 |只看该作者
   太好了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP