數(shù)據(jù)庫是商城軟件中重要的組成部分,定時任務(wù)能周期性地自動執(zhí)行中的程序必要的業(yè)務(wù)邏輯,以DSMall開源商城系統(tǒng)每日店鋪結(jié)算的業(yè)務(wù)邏輯為例:
!/bin/bash
?Name:bakMySQL.sh
?This?is?a?ShellScript?For?Auto?DB?Backup?and?Delete?old?Backup
備份地址
backupdir=/home/mysqlbackup
備份文件后綴時間
time=`?date?+%Y%m%d%H%M%S?
date +%Y%m%d%H
需要備份的數(shù)據(jù)庫名稱
db_name=test
mysql?用戶名
db_user=root
mysql?密碼
db_pass=123456
mysqldump?-u?$db_user?-p$db_pass?$db_name?|?gzip?>?$backupdir/$db_name$time.sql.gz
刪除一分鐘之前的備份文件
find?$backupdir?-name?$db_name"*.sql.gz"?-type?f?-mmin?+1?-exec?rm?-rf?{}?\;?>?/dev/null?2>&1
保存退出
說明:
代碼中 time=也可以寫為time=”$(date +”%Y%m%d$H”)”
符號是TAB鍵上面的符號,不是ENTER左邊的’符號,還有date后要有一個空格。
其中
db_name:數(shù)據(jù)庫名;
db_user:數(shù)據(jù)庫用戶名;
db_pass:用戶密碼;
type f????表示查找普通類型的文件,f表示普通文件。
mtime +7???按照文件的更改時間來查找文件,+7表示文件更改時間距現(xiàn)在7天以前;如果是?-mmin +7表示文件更改時間距現(xiàn)在7分鐘以前。
exec rm {}?;???表示執(zhí)行一段shell命令,exec選項后面跟隨著所要執(zhí)行的命令或腳本,然后是一對兒{},一個空格和一個,最后是一個分號。
/dev/null 2>&1??把標準出錯重定向到標準輸出,然后扔到/DEV/NULL下面去。通俗的說,就是把所有標準輸出和標準出錯都扔到垃圾桶里面;其中的&表示讓該命令在后臺執(zhí)行。
定時執(zhí)行
bak_config?文件代碼如下
?every?day?exec
/home/bak_sh/bak_day.sh
every?week?exec
?0?/home/bak_sh/bak_week.sh
every?month?exec
?/home/bak_sh/bak_month.sh
先用查詢狀態(tài)命令查詢crond狀態(tài),如果處在停止狀態(tài)則須先啟動;如已在啟動狀態(tài),則無須理會。
操作命令如下:
??/sbin/service crond start?啟動
??/sbin/service crond restart?重啟
??/sbin/service crond stop?停止
??/sbin/service crond status?查詢狀態(tài)
查看服務(wù)是否已經(jīng)運行用?
ps -ax | grep cron
查看調(diào)度任務(wù)
crontab -l?//列出當前的所有調(diào)度任務(wù)
crontab -r?? //刪除所有任務(wù)調(diào)度工作
添加調(diào)度任務(wù)
crontab /home/bak_sh/bak_config
成都創(chuàng)新互聯(lián)公司專注于峨眉山網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供峨眉山營銷型網(wǎng)站建設(shè),峨眉山網(wǎng)站制作、峨眉山網(wǎng)頁設(shè)計、峨眉山網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造峨眉山網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供峨眉山網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。