1、查看crontab執行歷史記錄
tail -n 100 -f /var/log/cron
2、添加crontab定時任務
crontab -e
添加定時任務,每天23點0分執行
0 23 * * * /usr/local/mssqlbackup.sh
3、查看crontab定時任務
crontab -l
注:crontab裏面是沒環境變量,如果crontab歷史記錄中有shell有執行記錄,但是shell沒效果,可能是shell中存在需要環境變量path的命令
export $PATH
所以shell裏面要用全路徑
4、mssql的備份腳本
#!/bin/bash
#設置mysql備份目錄
folder=/var/opt/mssql/backup
cd $folder
day=`date +%Y%m%d`
#rm -rf $day
#mkdir $day
#cd $day
#數據庫服務器,一般爲localhost
host=localhost
#用戶名
user=sa
#密碼
password='123456'
#要備份的數據庫
db=MTS
#數據要保留的天數
days=7
#由於crontab命令是沒環境變量,所以sqlcmd命令,要用全路徑,否則定時執行會執行失敗
/opt/mssql-tools/bin/sqlcmd -H$host -U$user -P$password -Q "
BACKUP DATABASE TESTDB
TO DISK = '/var/opt/mssql/backup/TESTDB"$day".bak'
WITH FORMAT;
GO"
#刪除之前的備份
#cd ..
day=`date -d "$days days ago" +%Y%m%d`
rm -rf "TESTDB"$day".bak"
echo "remove TESTDB"$day".bak"