数据库自动备份及自动删除备份

自动备份脚本

#!/bin/bash
DATABASE=databasename
UNAME=用户
PWORD=密码
# 保存位置
BAKDIR=/home/dbback/
mysqldump -u$UNAME -p$PWORD $DATABASE | gzip > $BAKDIR$DATABASE$(date +%Y%m%d%H%M%S).sql.gz
rm -rf  $DATABASE$(date -d '1 week ago' +%Y%m%d)*

自动删除30天的备份

cat delbak.sh
#!/bin/sh
location="/home/dbback/"
find $location -mtime +30 -type f |xargs rm -f

ps:
location 是设置查找的目录
--mtime +30 是设置时间为30天前
-type f 这周查找的类型为文件

然后加入crontab定时来删除:

代码如下:

crontab -l
10 4 1 * * /bin/sh /root/soft_shell/delbak.sh
# 设定为每个月1号晚上4点10分执行脚本.当然你也可以根据你自己的需求去整.

相同的删除方法:

代码如下:

find /root/sqlbak -mtime +30 -type f -name *.gz -exec rm -f {} \;
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容