Centos安装crontab给网站数据库和附件定时打包备份

一,安装crontab:

yum install vixie-cronyum install crontabs

二,服务crontab使用:

/sbin/service crond start      //启动服务
/sbin/service crond stop       //关闭服务
/sbin/service crond restart    //重启服务
/sbin/service crond reload     //重新载入配置
service crond status           //查看crontab服务状态
service crond start           //手动启动crontab服务
ntsysv                        //查看crontab服务是否已设置为开机启动  
chkconfig --level 35 crond on  //加入开机自动启动

.

三,crontab命令:

crontab -e  编辑定时任务文件crontab,按a,进入输入模式,编辑完之后,按Esc键,然后输入:wq!回车保存成功。
crontab -l  列出定时任务文件crontab里的内容 
crontab -r  删除定时任务文件crontab

*  *  *  *  *  command
分 时 日 月 周  命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

四,写定时任务案例:

00 23 * * 6 /root/bak.sh     //表示每个星期六晚上23:00定时执行备份shell文件。

五,备份shell文件案例:

mysqldump -u数据库用户名 -p数据库密码 数据库名称 > /home/wwwroot/bak.fuckyou.com/mysql_$(date +"%Y%m%d").sql
表示备份指定的数据库,且文件名称中包含了当前日期

zip -r /home/wwwroot/bak.fuckyou.com/attachment_$(date +"%Y%m%d").zip /home/wwwroot/www.fuckyou.com/d/file/$(date +"%Y%m")
表示打包备份指定的文件夹,备份的是网站附件,且只备份以当前月份命名的文件夹。

最后命名为bak.sh,丢到服务器/root/目录下。(和定时任务里指定的文件路劲对应即可。)