linux定时备份mysql数据库并保留三天数据

1.创建批处理文件

#获取当前时间  格式yyyyMMddHHmmss
dtime="$(date +"%Y%m%d%H%M%S")"
#数据库名称
db_name=aiKnowledge
#连接数据库用户名
userName=root
#连接数据库密码
password=root
#生成sql文件的文件名称
copy_sql_name=$dtime"$db_name"
#存储sql文件的目录
sqlPath=~/mysqlData/sql
#进入存储sql文件目录
cd $sqlPath
#备份数据库
mysqldump -u "$username" -p"$password" $db_name > "$copy_sql_name".sql
#删除三天前的数据记录
#保留文件数
ReservedNum=3
#sql文件保留位置目录
RootDir=~/mysqlData/sql
#显示文件数, *.*可以改为指定文件类型
FileNum=$(ls -l *.sql | grep ^- | wc -l)
while(( $FileNum > $ReservedNum ))
do
    #取最旧的文件,*.*可以改为指定文件类型
    OldFile=$(ls -rt *.sql | head -1)
    echo "Delete File:"$RootDir'/'$OldFile
    rm -f $RootDir'/'$OldFile
    let "FileNum--"
done

2.创建定时执行批处理文件任务
使用linux的cron进行定时执行批处理文件命令,不懂cron的可以参考:https://www.cnblogs.com/lvdongjie/p/4205569.html
打开/etc/crontab文件进行编辑
示例:0 1 * * * root sh ~/mysqlData/copy_mysql_data.sh
0 1 * * (每日凌晨1点执行)root(账号名)sh(执行文件类型) 后面的是批处理文件的地址
3.查看定时任务执行日志
进入/var/log目录,查看cron文件或者cron
文件即可查看定时任务运行日志。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值