1、首先你要有Linux的环境以及一个mysql数据库
这个我们就不谈了
2、创建一个shell文件用于备份数据库
vim backup.sh
#这边的意思是备份数据库账号为root 密码为123456的aaaa数据库
#打包到/home/aaaa/DataBase_backup/sql目录
#并配置了一个为期14天的备份,超过这个时间自动删除,:wq保存退出
mysqldump -uroot -p123456 aaaa | gzip > /home/aaaa/DataBase_backup/sql/aaaa`date +%Y%m%d%H%M%S`.sql.gz
find /home/aaaa/DataBase_backup/sql/ -mtime +14 -type f | xargs rm -f
3、查看是否已有定时任务在执行
crontab -l
4、定时任务开启
crontab -e
# 这里cron表达式表示每天0点自动备份,启动的文件为第二步的backup.sh文件
0 0 * * * sh /home/aaaa/DataBase_backup/backup.sh
这边保存可能会出现一个权限不足的提示:/var/spool/cron/#tmp.localhost.localdomain.XXXXFdc6fz: 权限不够
用了sudo后发现还是不行,于是在网上找了资料后:
#用了这两行命令来解决了问题
lsattr /var/spool/cron/ #查看是否有特殊的属性
chattr -ai /var/spool/cron #去掉特殊的属性
然后再用crontab -e运行保存成功,再次用crontab -l查看是否已经存在该命令
如果出现这条信息则表示成功!
5、重启crondtab服务
service crond restart