每天定时备份mysql数据库任务

需求:

1,每天0点备份mysql数据;

2,为节省空间,删除超过3个月的所有备份数据;

3,删除超过7天的备份数据,保留3个月里的 10号 20号 30号的备份数据;

复制代码
#创建shell文件
vim backup_mysql.sh

mysqldump -uroot -p123456 --all-databases  > /data/dbdata/mysqlbak/`date +%Y%m%d`.sql
find /data/dbdata/mysqlbak/ -mtime +7 -name '*[1-9].sql' -exec rm -rf {} \;
find /data/dbdata/mysqlbak/ -mtime +92 -name '*.sql' -exec rm -rf {} \;

#创建定时任务
crontab –e
0 0 * * *  /data/dbdata/backup_mysql.sh

注:备份数据
mysqldump --extended-insert=false/true
区别:前者为insert语句逐条记录方式|且效率相对较低,备份文件相对较大
后者为insert记录压缩过得|相对而言效率高效
posted @ 2018-04-02 12:01  土豆柿子  阅读(491)  评论(0编辑  收藏  举报