Preface
 
    There's a common case that we neet to archive amount of records in some tables to a file or another table in different database even delete them directly.Is there a tool can do all these jobs with satisfying way?Surely it is.pt-archiver can help us archiving that various archive jobs.
 
Introduce
 
    pt-archiver is a single tool of Percona-Toolkit suits which is produced by percona company.It provides  flexible way to archive your data in tables.Let's see the detail of it.
 
Procedure
 
 ###Download and install Percona-Toolkit###
[root@zlm2 :: ~]wget https://www.percona.com/downloads/percona-toolkit/3.0.10/binary/redhat/7/x86_64/percona-toolkit-3.0.10-1.el7.x86_64.rpm
-- Omitted.
[root@zlm2 :: ~]yum -y localinstall percona-toolkit-3.0.-.el7.x86_64.rpm
-- Omitted.
Installed:
percona-toolkit.x86_64 :3.0.-.el7 Dependency Installed:
perl-Compress-Raw-Bzip2.x86_64 :2.061-.el7 perl-Compress-Raw-Zlib.x86_64 :2.061-.el7 perl-DBD-MySQL.x86_64 :4.023-.el7
perl-DBI.x86_64 :1.627-.el7 perl-Data-Dumper.x86_64 :2.145-.el7 perl-Digest.noarch :1.17-.el7
perl-Digest-MD5.x86_64 :2.52-.el7 perl-IO-Compress.noarch :2.061-.el7 perl-IO-Socket-IP.noarch :0.21-.el7
perl-IO-Socket-SSL.noarch :1.94-.el7 perl-Mozilla-CA.noarch :-.el7 perl-Net-Daemon.noarch :0.48-.el7
perl-Net-LibIDN.x86_64 :0.12-.el7 perl-Net-SSLeay.x86_64 :1.55-.el7 perl-PlRPC.noarch :0.2020-.el7
perl-TermReadKey.x86_64 :2.30-.el7 Complete! ###After install the Percona-Toolkit,you can check all the tools it contains by command below:###
[root@zlm2 :: ~]man percona-tookit
TOOLS
This release of Percona Toolkit includes the following tools: pt-align
Align output from other tools to columns. pt-archiver
Archive rows from a MySQL table into another table or a file. pt-config-diff
Diff MySQL configuration files and server variables. pt-deadlock-logger
Log MySQL deadlocks. pt-diskstats
An interactive I/O monitoring tool for GNU/Linux. pt-duplicate-key-checker
Find duplicate indexes and foreign keys on MySQL tables. pt-fifo-split
Split files and pipe lines to a fifo without really splitting. pt-find
Find MySQL tables and execute actions, like GNU find. pt-fingerprint
Convert queries into fingerprints. pt-fk-error-logger
Log MySQL foreign key errors. pt-heartbeat
Monitor MySQL replication delay. pt-index-usage
Read queries from a log and analyze how they use indexes. pt-ioprofile
Watch process IO and print a table of file and I/O activity. pt-kill
Kill MySQL queries that match certain criteria. pt-mext
Look at many samples of MySQL "SHOW GLOBAL STATUS" side-by-side. pt-mysql-summary
Summarize MySQL information nicely. pt-online-schema-change
ALTER tables without locking them. pt-pmp
Aggregate GDB stack traces for a selected program. pt-query-digest
Analyze MySQL queries from logs, processlist, and tcpdump. pt-show-grants
Canonicalize and print MySQL grants so you can effectively replicate, compare and version-control them. pt-sift
Browses files created by pt-stalk. pt-slave-delay
Make a MySQL slave server lag behind its master. pt-slave-find
Find and print replication hierarchy tree of MySQL slaves. pt-slave-restart
Watch and restart MySQL replication after errors. pt-stalk
Collect forensic data about MySQL when problems occur. pt-summary
Summarize system information nicely. pt-table-checksum
Verify MySQL replication integrity. pt-table-sync
Synchronize MySQL table data efficiently. pt-table-usage
Analyze how queries use tables. pt-upgrade
Verify that query results are identical on different servers. pt-variable-advisor
Analyze MySQL variables and advise on possible problems. pt-visual-explain
Format EXPLAIN output as a tree. ###See the parameter of pt-archiver.###
[root@zlm2 :: ~]#pt-archiver --help
-- Omitted. ###Parameters demonstration.###
Indispensible parameter:
--source [-h|-S] -u -P -D -A Choose only one below:
--dest=d -- Usually be used to archive records to another table(can be different instance).
--purge -- Usually be used to purge records instead of archive them.
--file=s -- Usually be used to archive records into a file. Performance ralevant:
--analyze=s -- Run analyze table after archive.
--optimize=s -- Run optimize table after archive.
--ascend-first -- Ascend just first column of index.
--buffer -- Buffer output to file and flush when commit.
--bulk-delete -- Delete by chunk.
--bulk-insert -- Insert by chunk.
--limit=i -- Rows of per statment when arching,default .
--txn-size=i -- Rows of per trx,default .
--primary-key-only -- Merely use primary key. Infermation output:
--progress=i -- Print per i rows.
--statistics -- Print time statistics. Others parameters:
--dry-run -- Just print queries without real doing.
--retries=i -- Times of when retry,default .
--no-delete -- Specify not to delete archived records in source table. ###Take care the rules when specify parameters.###
Specify at least one of --dest, --file, or --purge. -- There're three mode of achive behavior.
--ignore and --replace are mutually exclusive.
--txn-size and --commit-each are mutually exclusive. -- Usually I'd rather use "txn-size" to specify the timing of commit depending amount of transactions.
--low-priority-insert and --delayed-insert are mutually exclusive.
--share-lock and --for-update are mutually exclusive.
--analyze and --optimize are mutually exclusive. -- I don't recommend use "analyze" or "optimize" when archive tables simultaneously,but afterward does when business not busy.
--no-ascend and --no-delete are mutually exclusive.
DSN values in --dest default to values from --source if COPY is yes.
Summary
  • pt-achiver is useful when archive your records of big tables.
  • Make sure that your table has index key on it.Otherwise,it will lead to bad performance when archive.
  • Plz distinguish these two parameter —— "no-delete"&"purge",they are differently used.
  • More testing is necessary to make out the performance influenced by different parameter.

Percona-Toolkit工具包之pt-archiver的更多相关文章

  1. Percona Toolkit mysql辅助利器

    1 PT介绍 Percona Toolkit简称pt工具—PT-Tools,是Percona公司开发用于管理MySQL的工具,功能包括检查主从复制的数据一致性.检查重复索引.定位IO占用高的表文件.在 ...

  2. Percona Toolkit工具使用

    Percona Toolkit简称pt工具-PT-Tools,是Percona公司开发用于管理MySQL的工具,功能包括检查主从复制的数据一致性.检查重复索引.定位IO占用高的表文件.在线DDL等 下 ...

  3. Centos 安装Percona Toolkit工具集

    1.下载 下载地址:   https://www.percona.com/downloads/percona-toolkit/LATEST/ [root@bogon ~]# wget https:// ...

  4. RDS for MySQL 如何使用 Percona Toolkit

    Percona Toolkit 包含多种用于 MySQL 数据库管理的工具. 下面介绍常用的 pt-online-schema-change  和  pt-archiver 搭配 RDS MySQL ...

  5. Percona Toolkit工具集介绍

    部署mysql工具是一个非常重要的部分,所以工具的可靠性和很好的设计非常重要.percona toolkit是一个有30多个mysql工具的工具箱.兼容mysql,percona server,mar ...

  6. Want to archive tables? Use Percona Toolkit’s pt-archiver--转载

    原文地址:https://www.percona.com/blog/2013/08/12/want-to-archive-tables-use-pt-archiver/ Percona Toolkit ...

  7. Percona Toolkit工具连接MySQL 8报错的解决方案

    使用Percona Toolkit的工具连接MySQL 8.x数据库时,会遇到类似"failed: Plugin caching_sha2_password could not be loa ...

  8. Percona Toolkit 使用

    安装 percona-toolkit perl Makefile.PL make make test make install 默认安装到 /usr/local/bin 目录下 可能需要 DBI-1. ...

  9. 使用Percona Toolkit解决Mysql主从不同步问题【备忘】

    由于各种原因,mysql主从架构经常会出现数据不一致的情况出现,大致归结为如下几类 1:备库写数据 2:执行non-deterministic query 3:回滚掺杂事务表和非事务表的事务 4:bi ...

  10. Percona Toolkit 2.2.19 is now available

    New Features: 1221372: pt-online-schema-change now aborts with an error if the server is a slave, be ...

随机推荐

  1. PHP基础--strtr和str_replace字符替换函数

    (一)strtr是字符替换函数 (1)单个字符替换: <?php echo strtr("abba", "ab", "10"),&qu ...

  2. Android 屏幕录制

    自己实现了Android的屏幕录制App. 用了MediaProjection类来作为源,MediaRecoder来捕捉,编码转换为本地视频. 效果图: 主要是这段代码开始录像: startActiv ...

  3. 【Linux】 Linux编程规范&Linux 编程环境搭建

    一.通过Samba映射网络驱动器 菜单栏-计算机-映射网络驱动器 English 菜单栏-Home -Easy access-Map as drive 编辑代码使用 Windows 编译 运行程序在 ...

  4. 【Linux】TFTP & NFS 服务器配置

    Why?--交叉开发 一.交叉开发模型 宿主机(PC)------ 网络.串口.USB.JTAG ------ 目标机(ARM系统) PC机作为TFTP & NFS 服务器,目标机从网络下载软 ...

  5. 使用auto_ptr需要注意的事项

    注:C++11 已不推荐使用,应使用scoped_ptr/shared_ptr. 部分原因就是如下的注意事项. 转自:http://patmusing.blog.163.com/blog/static ...

  6. java面试题----工厂模式大整理(面试问的较多)

    在一次面试中了解到工厂模式在实际应用中的重要性,可以说工厂模式的应用随处可见,以下是百度百科对工厂模式的介绍 工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式.著名的Jiv ...

  7. Struts的学习-例子

    一.新建空项目user和配置maven实现下面的页面 1.配置内容 2.编写struts.xml实现页面 <!--定义一个useraction--> <package name=&q ...

  8. jquery表单

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  9. mysqldump备份脚本一例

    参考三思老师书中所写,感觉挺好用,记录下来,虽然是抄袭,但是手抄还是很累的,其中用到的其他脚本,在博客中已经记录: mysql_full_backup.sh#!/bin/sh#Created by C ...

  10. 查看oracle固定目录下日志和trace文件大小脚本

    python刚入门,在Oracle官网看到个小脚本,感觉挺有意思,经过测试切实可行. [oracle@ycr python]$ more 5.py import datetimeimport osim ...