能够 应用percona-toolkit库中的pt-archiver专用工具来开展历史时间数据归档

pt-archiver应用的情景:

1、清除网上过期数据。

2、清除过期数据,并把数据归档到当地归档表格中,或是远侧归档网络服务器

3、二张表中间的数据不完全一致,期待合拼。这时再加上–ignore或–replace选择项,能够 轻轻松松完成。

4、导出来网上数据,到线下推广数据作解决。

事例:

pt-archiver --source h=127.0.0.1,P=3306,D=database,t=table,u=root,p=123456 --dest h=127.0.0.1,P=3306,D=database,t=new_table,u=root,p=123456 --no-check-charset --where 'id>100' --progress 1000 --no-delete --limit=1000 --statistics

主要参数表明:

--statistics:完毕的情况下得出统计数据:刚开始的时间点,完毕的时间点,查寻的个数,归档的个数,删掉的个数,及其每个环节耗费的总的時间和占比,有利于为此开展提升。
--where:得出表格中要解决的数据的查询条件。
--progress:每解决progress特定的个数后,就复印一次信息内容。
--no-delete:表明不删掉原先的数据,留意:如果不特定此参数,全部解决进行后,都是会清除原表中的数据。
--limit:表明每一次事务管理删掉是多少条数据,默认设置1条(留意:假如数据比较多时,还可以设定大一些,降低循环系统频次)。
--txn-size:每一个事务管理递交的数据个数(包含存取数据),大批量递交,提升该值能够 提高归档特性。
--file:数据储放的文档,最好是特定绝对路径,文件夹名称能够 灵便地组成(此外,我检测过写文档与不写文档速率基本上类似,本来认为不写文档速率会快)。
--charset=UTF8 特定字段名为UTF8
--no-check-charset 不特定字段名
--bulk-delete 批量删除source上的旧数据(比如每一次1000行的批量删除实际操作)
--bulk-insert 批量插入数据到dest服务器 (看dest的general log发觉它是根据在dest服务器上LOAD DATA LOCAL INFILE插进数据的)
--replace 将insert into 句子改为replace载入到dest库
--sleep120 每一次归档了limit个行纪录后的休眠状态120秒(企业为秒)
--local 不把optimize或analyze实际操作载入到binlog里边(避免 导致主从关系延迟时间极大)
--retries 请求超时或是出現死链接得话,pt-archiver开展再试的间距(默认设置1s)
--no-version-check 迄今为止,发觉一部分pt专用工具对阿里云服务器RDS实际操作务必加这一主要参数
--analyze=ds 实际操作完毕后,提升表空间(d表明dest,s表明source)
--purge 删掉source数据库的有关配对纪录,不归档删掉数据

参照:http://www.ywnds.com/?p=8379 ,http://www.mamicode.com/info-detail-1903758.html