第一步
需要先做一个软链接,让mysqldump这个命令能够在/usr/bin/下执行
ln -s /usr/local/tools/mysql/bin/mysqldump /usr/bin/
第二步
编写一个shell脚本 注意其中日期方面 注意有空格键
#!/bin/bash
/usr/bin/mysqldump -uroot -p726843014@qq.com --all-databases | gzip > /usr/local/tools/mysql_backup/` date +%Y%m%d%H `.sql.gz
find /usr/local/tools/mysql_back -name "*.sql.gz" -type f -mtime +7 -exec rm {} ; > /dev/null 2>&1
你可以先测试该脚本能不能运行。
第三步
需要修改系统的一些配置 也就是做定时任务的配置文件
vi /etc/crontab
在代码的最下面添加定时任务
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
#mysql date backup
00 4 * * * root /usr/local/tools/mysql_backup/mysql_backup.sh
前面的就是定时任务的时间 后面就是要执行的shell脚本。
最后重启定时任务
/etc/rc.d/init.d/crond restart