記錄一下~~~Linux配置定時任務備份資料庫dmp文件

1.創建備份目錄:

mkdir -p /dcits/sx_xmz/sx_data_bak
chown -R oracle18c:oinstall /dcits/sx_xmz/sx_data_bak

2.腳本文件編寫 vi databak.sh 輸入如下內容

#設置環節變數
export ORACLE_SID=orcl18c
export ORACLE_BASE=/home/oracle18c/u01/app/oracle
export ORACLE_HOME=/home/oracle18c/u01/app/oracle/product/18.3/dbhome_1
export PATH=/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export PATH=$ORACLE_HOME/bin:$PATH
#設置用戶變數, 資料庫用戶
orowner=sx_rms
#設置時間
days=10
#設置文件名稱
bakdata=$orowner"_"$(date +%Y%m%d).dmp
#設置導出執行日誌名稱
baklog=$orowner"_"$(date +%Y%m%d).log
#設置打包名稱
ordatabak=$orowner"_"$(date +%Y%m%d).tar.gz
#設置備份文件存放地址
bakdir=/dcits/sx_xmz/sx_data_bak
#編寫備份命令
cd $bakdir
exp sx_rms/sx_ams@pdb1 file=$bakdir/$bakdata owner=sx_rms log=$bakdir/$baklog
tar -zcvf $ordatabak  $bakdata $baklog
find $bakdir  -type f -name "*.log" -exec rm {} \;
find $bakdir  -type f -name "*.dmp" -exec rm {} \;
find $bakdir  -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;

**編寫完成之後,手動執行下腳本驗證腳本是否正確,完事用chmod命令給腳本文件賦予執行許可權 **

3.切換到oracle的用戶,創建Linux定時任務

-e edit user’s crontab 編輯定時任務
-l list user’s crontab 查看定時任務列表
-r delete user’s crontab 刪除定時任務
crontab -l 查看當前用戶下的定時任務
crontab -e 編輯定時任務,編輯完成保存
30 1 * * * /dcits/sx_xmz/sx_data_bak/databak.sh
crontab -l 查看是否添加成功
30 1 * * * /dcits/sx_xmz/sx_data_bak/databak.sh

定時任務設置時間結構:

 ┌────────── minute (0 - 59)
 │ ┌──────── hour (0 - 23)
 │ │ ┌────── day of month (1 - 31)
 │ │ │ ┌──── month (1 - 12)
 │ │ │ │ ┌── day of week (0 - 6 => Sunday - Saturday, or
 │ │ │ │ │                1 - 7 => Monday - Sunday)
 ↓ ↓ ↓ ↓ ↓
 *   *   *  *   * command to be executed

注意事項:

a、星期和數字對應
0 - Sun      Sunday
1 - Mon      Monday
2 - Tue      Tuesday
3 - Wed      Wednesday
4 - Thu      Thursday
5 - Fri      Friday
6 - Sat      Saturday
7 - Sun      Sunday

b、』day or month『 、『month』 、『day of week』  --這三項注意  如果不能確定月份日期和周日期對應關係,可以兩個取一個  即 規定了 月份和日期 就不選擇星期 星期 執行 *  規定了 星期  月份和日期就 * *

參考鏈接://www.cnblogs.com/huangjiangyong/p/15434857.html

Tags: