pt-archiver配置自动归档
2024-09-02 01:46:15
Mysql的数据归档通常使用percona的pt-archiver。通过shell脚本加crontab可以应对大多数场景下的数据自动归档。
安装
Percona Toolkit的安装不再赘述,请自行搜索参考内容。
归档脚本
mysql_archiver.sh 代码如下:
d1=`date -d "-1 month " +%Y-%m-%d`
d2=`date -d "-2 month " +%Y-%m-%d`
d3=`date -d "-3 month " +%Y-%m-%d`
d4=`date -d "-4 month " +%Y-%m-%d`
d5=`date -d "-5 month " +%Y-%m-%d`
d6=`date -d "-6 month " +%Y-%m-%d`
echo 'd1='$d1' d2='$d2' d3='$d3' d4='$d4' d5='$d5' d6='$d6
echo archiver table common_req
pt-archiver --source h=xxx.mysql.rds.aliyuncs.com,P=3306,u=test,p='你的密码',D=db1,t=common_req --dest h=xxx.mysql.rds.aliyuncs.com,P=3306,u=ucheer_cgb_user,p='你的密码',D=db1,t=common_req_archive --charset=UTF8 --where 'create_time<"'$d3'"' --progress 10000 --limit=10000 --txn-size 10000 --no-version-check --statistics --purge --ignore
pt-archiver的功能很丰富,相关语法请自行搜索,这里简要介绍下线上实际使用脚本中的参数及取值。
变量d1 - d6分别为当天的前1 - 6个月,实际场景中大多是执行清理多久前的数据。表必须要有主键,归档条件记得建立合适的索引,建议每个表都建立 create_time和update_time。
每批按10000条处理,并显示统计信息。purge是指删除原表中已归档数据,ignore是指当数据冲突时忽略冲突。
归档计划
crontab -e 添加一条定时任务:
00 04 * * * /bin/sh /home/xxx/mysql_archiver.sh>> /home/xxx/mysqlarchiver/output.txt
每天凌晨4点执行一次归档计划脚本且将结果保存到output.txt中。
总结
pt-archiver的功能丰富,通过shell脚本加crontab即可实现定时任务归档。在表设计之初,也需要考虑数据归档的条件及建立合适的索引。另外定时归档计划要对项目组共享,防止不知道的程序员以被归档表的表做全量业务搜索。
最新文章
- php中的M方法
- Java程序-进程中的";进程";
- jquery重写一个对话框
- CI框架初探
- CentOS7.0分布式安装HADOOP 2.6.0笔记-转载的
- mysql语句中使用like后面的%(百分号)的问题
- delphi中nil、null、UnAssigned区别
- CaltrainTimes从设计到发布(基于Flex的手机应用)
- C#将制定文件夹下的PDF文件合并成一个并输出至指定路径
- Factory Method (工厂模式)
- SQL语句练习题【主供自己学习、记忆】
- leetcode136只出现一次的数字
- contos mysql 删除
- 安装PHP扩展32位与64位的误区(x86与x64的查看)
- Activity之Serializable
- 关于PS抠图的各种方法 有这个就可以去面试了!!!加油!!!
- JS性能优化 之 FOR循环
- Xmind在win10更改用户设置后出现Invalid Configuration Location 错误的解决办法
- QtWebkit包含的类简介
- HDU2993_MAX Average Problem
热门文章
- 对opencv读取的图片进行像素调整(1080, 1920) 1.cv2.VideoCapture(构造图片读取) 2.cv2.nameWindow(构建视频显示的窗口) 3.cv2.setWindowProperty(设置图片窗口的像素) 4.video_capture(对图片像素进行设置)
- 给JAVA的eclipse IDE 在线安装 SVN插件 / 给 eclipse 添加打开所在的文件夹功能
- 1、WebSphere Application Server的下载以及安装
- Workflow-产品:泛微工作流引擎
- py matplotlib 多个figure同时画多个图以及多个图例多个折线图
- springboot2.0数据制作为excel表格
- 七十九:flask.Restful之flask-Restful标准化返回参数示例
- android开发过程报错
- JPA 或者Hibernate 实体类说明
- Node、Document关系的探究