cron是一個linux下的定時執行工具,可以在無需人工干預的情況下運行作業。由于Cron 是Linux的內置服務,但它不自動起來,可以用以下的方法啟動、關閉這個服務:
/sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
?
?
你也可以將這個服務在系統啟動的時候自動啟動:
?
在/etc/rc.d/rc.local這個腳本的末尾加上:
/sbin/service crond start
?
現在Cron這個服務已經在進程里面了,我們就可以用這個服務了
?
?
?
以Linux下定時備份mysql為例說明下
寫一個簡單的mysql備份shell腳本
vi
#!/bin/sh
da=`date +%Y%m%d%H%M%S`
mysqldump -u root -pdongjj --all-database>/root/mysqlbakup/$da
保存為 mysqlbak.sh
然后crontab-e
?0 3 * * * /root/mysqlbak.sh?
保存退出
?
相關命令----------------
crontab file [-u user]-用指定的文件替代目前的crontab。?
crontab-[-u user]-用標準輸入替代目前的crontab.?
crontab-1[user]-列出用戶目前的crontab.?
crontab-e[user]-編輯用戶目前的crontab.?
crontab-d[user]-刪除用戶目前的crontab.?
crontab-c dir- 指定crontab的目錄。?
crontab文件的格式:M H D m d cmd.?
M: 分鐘(0-59)。?
H:小時(0-23)。?
D:天(1-31)。?
m: 月(1-12)。?
d: 一星期內的天(0~6,0 表示星期天)
??除了數字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*代表所有的取值范圍內的數字,"/"代表每的意思,"*/5"表示每5個單位,"-"代表從某個數字到某個數字,","分開幾個離散的數字。
?
?
每次編輯完某個用戶的cron設置后,cron自動在/var/spool/cron下生成一個與此用戶同名的文件,此用戶的cron信息都記錄在這 個文件中,這個文件是不可以直接編輯的,只可以用crontab -e 來編輯。cron啟動后每過一份鐘讀一次這個文件,檢查是否要執行里面的命令。因此此文件修改后不需要重新啟動cron服務。
查看crontab 執行的日志,可以在/var/log/cron* 查看,或者 0 3 * * * /root/mysqlbak.sh?>/var/log/mysqlbak.log 2>&1 把日志定向出來查看。