利用操作系統的定時功能刪除歸檔日誌

利用操作系統的定時功能刪除歸檔日誌
歸檔路徑:/arch2
1、 以oracle用戶身份登錄系統
2、 創建腳本del_archivedlog:
#!/usr/bin/ksh
echo "delete archived logs begin"
date
export ORACLE_BASE=/oracle
export ORACLE_SID=yhlbas
export TMP=/oracle/temp
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export PATH=$PATH:$ORACLE_HOME/bin:/bin:/usr/ccs/bin:/usr /lbin:/usr/bin
export LIB_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/netw ork/lib
find /arch2 –mtime -7 –name “*.arch” >/arch2/test
if [ -s /arch2/test ]
then
if find /arch2 ! -mtime -7 -name “*.arch” -exec rm -f '{}' ';'
then
echo "delete archived logs of seven days ago complete!"
else
echo “delete archived logs of seven days ago failed!”
fi
else
echo “there are no archived logs of seven days ago!”
fi
(以上內容是如果歸檔路徑下存在七天以內的歸檔日誌文件則刪除7天以前的歸檔日誌)
3、 改變腳本del_archivedlog權限:
chmod 777 del_archivedlog
4、 定時腳本del_archivedlog
crontab –e 然後輸入如下內容:
00 5 * * * /oracle/del_archivedlog >>/oracle/del_archivedlog_log 2>&1
(表示在每天的凌晨5點執行del_archivedlog腳本,並將輸出內容重定向到del_archivedlog_log文件,以後查看該文件就知道是否運行成功)
由於沒有使用rman的方式進行數據庫歸檔日誌的刪除工作,所以考慮用操作系統的自動作業方式來進行,希望大家給與建議!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章