表复制工具pt-archiver基本使用

3天前 9.1k 0

表复制工具pt-archiver基本使用

1 percona-toolkit安装

1.1 下载地址:

源码下载地址:
https://www.percona.com/downloads/percona-toolkit/3.0.9/source/tarball/percona-toolkit-3.0.9.tar.gz

1.2 安装依赖包

yum install perl perl-DBI perl-DBD-MySQL perl-IO-Socket-SSL perl-Time-HiRes perl-devel -y

1.3 安装percona-toolkit工具包

[root@node1 software]# tar -zxvf percona-toolkit-3.0.9_x86_64.tar.gz
[root@node1 software]# cd percona-toolkit-3.0.9/
[root@node1 percona-toolkit-3.0.9]# perl Makefile.PL
[root@node1 percona-toolkit-3.0.9]# make && make install

1.4 验证是否安装成功

[root@node1 ~]# pt-summary --version
pt-summary 3.0.9

1.5 工具命令及作用

工具类别 工具命令 工具作用 备注
开发类 pt-duplicate-key-checker 列出并删除重复的索引和外键 -
pt-online-schema-change 在线修改表结构 -
pt-query-advisor 分析查询语句,并给出建议,有bug 已废弃
pt-show-grants 规范化和打印权限 -
pt-upgrade 在多个服务器上执行查询,并比较不同 -
性能类 pt-index-usage 分析日志中索引使用情况,并出报告 -
pt-pmp 为查询结果跟踪,并汇总跟踪结果 -
pt-visual-explain 格式化执行计划 -
pt-table-usage 分析日志中查询并分析表使用情况 pt 2.2新增命令
配置类 pt-config-diff 比较配置文件和参数 -
pt-mysql-summary 对mysql配置和status进行汇总 -
pt-variable-advisor 分析参数,并提出建议 -
监控类 pt-deadlock-logger 提取和记录mysql死锁信息 -
pt-fk-error-logger 提取和记录外键信息 -
pt-mext 并行查看status样本信息 -
pt-query-digest 分析查询日志,并产生报告 常用命令
pt-trend 按照时间段读取slow日志信息 已废弃
复制类 pt-heartbeat 监控mysql复制延迟 -
pt-slave-delay 设定从落后主的时间 -
pt-slave-find 查找和打印所有mysql复制层级关系 -
pt-slave-restart 监控salve错误,并尝试重启salve -
pt-table-checksum 校验主从复制一致性 -
pt-table-sync 高效同步表数据 -
系统类 pt-diskstats 查看系统磁盘状态 -
pt-fifo-split 模拟切割文件并输出 -
pt-summary 收集和显示系统概况 -
pt-stalk 出现问题时,收集诊断数据 -
pt-sift 浏览由pt-stalk创建的文件 pt 2.2新增命令
pt-ioprofile 查询进程IO并打印一个IO活动表 pt 2.2新增命令
实用类 pt-archiver 将表数据归档到另一个表或文件中 -
pt-find 查找表并执行命令 -
pt-kill Kill掉符合条件的sql 常用命令
pt-align 对齐其他工具的输出 pt 2.2新增命令
pt-fingerprint 将查询转成密文 pt 2.2新增命令

2.工具用法说明及举例

2.1 pt-align

pt-align - Align output from other tools to columns.(按行对齐其他工具的输出)

Usage:

pt-align [FILES]

[root@node1 ~]# cat a.txt
id name age
1 ‘aaaa’ 11
2 ‘bbbbb’ 23
3 ‘cccccc’ 5

[root@node1 ~]# pt-align a.txt
id name age
1 ‘aaaa’ 11
2 ‘bbbbb’ 23
3 ‘cccccc’ 5

2.2 pt-archiver

(1)pt-archiver - Archive rows from a MySQL table into another table or a file.

(将MySQL表中的行存档到另一个表或文件中,可以理解为归档)

Usage:

pt-archiver [OPTIONS] --source DSN --where WHERE

eg:

(2) 基础环境准备

源数据库:
set global innodb_flush_log_at_trx_commit=0;
create database db1
use db1;
create table t(id int primary key, a int, b int, index(a)) engine=innodb;
delimiter ;;
create procedure idata()
begin
declare i int;
set i=1;
while(i

相关文章

最新发布!MySQL 9.0 的向量 (VECTOR) 类型文档更新
国产数据库中级认证HCIP-openGauss经验分享
保障数据完整性与稳定性:数据库一致性
OceanBase 里的 DDL 超时时间
OceanBase v3.1.x 将不再更新版本 | 社区月报2024.6
openGauss Developer Day 2024 | SIG组工作会议亮点回看!

发布评论