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文件即可查看定时任务运行日志。