centos定时任务进行数据库数据备份

1、确认是否正确安装crontab

 service crond status 或

crontab -l

若未正确安装,请执行如下命令进行crontab安装

yum install vixie-cron

yum install crontabs


2、编写任务脚本

#!/bin/sh

DB_NAME="mydb"
DB_USER="root"
DB_PASS="password"
BIN_DIR="/usr/bin"
BCK_DIR="/backup"
DATE=`date +%F`
$BIN_DIR/mysqldump -u$DB_USER -p$DB_PASS $DB_NAME |gzip > $BACK_DIR/db_$DB_NAME__$DATE.gz


注意%F前面没有空格,DB_PASS若有特殊字符请转义,如$要改成“\$”

加入定时任务前可以先执行此脚本,以便减少不必要的错误。


3、加入到定时任务中

编辑

/var/spool/cron/root
/etc/crontab

这两个文件一个包含用户名一个没有,其他区别没发现(貌似/var/spool/cron/root优先级高些)

修改样例

/var/spool/cron/root 如下: 

5  2  * * * /home/db_bck.sh

/etc/crontab 如下:

5  2  * * *root/home/db_bck.sh > /dev/null 2>&1


4、重启服务
etc/init.d/crond restart
service crond restart


5、执行crontab -l确认任务添加情况


6、加入开机自动启动

chkconfig --level 35 crond on


7、crontab命令样例

# 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


*: 表示任何时刻
,: 表示分割
-:表示一个段,如第二端里: 1-5,就表示1到5点
/n : 表示每个n的单位执行一次,如第二段里,*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1.


10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart

——每周六、周日的1 : 10重启apache

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
——每天18 : 00至23 : 00之间每隔30分钟重启apache

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
——每一小时重启apache

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
——晚上11点到早上7点之间,每隔一小时重启apache

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
——每月的4号与每周一到周三的11点重启apache

*/30 * * * * /usr/sbin/ntpdate 210.72.145.44
每半小时同步一下时间

0 2 * * * /u01/test.sh >/dev/null 2>&1 &
——在后台执行这条命令,并将错误输出2重定向到标准输出1,

然后将标准输出1全部放到/dev/null 文件,也就是清空。

ls xxx >out.txt 2>&1 == ls xxx 1>out.txt 2>&1;  因为重定向符号>默认是1,

这句就把错误输出和标准输出都传到out.txt 文件中。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值