oracle各種日誌清理

oracle各種日誌清理(通常oracle軟件目錄約10G左右)


通常先進$ORACLE_BASE目錄,查看哪一個目錄佔用較大空間,並層層深刻,定位到佔用較大的目錄,判斷文件類型並清理。以下:
    [oracle@test-for-lihb ~]$ cat /etc/redhat-release 
    Red Hat Enterprise Linux Server release 6.4 (Santiago)
    [oracle@test-for-lihb ~]$ cd $ORACLE_BASE
    [oracle@test-for-lihb /opt/app/oracle]$ du -sm *|sort -n
    1 admin
    1 afiedt.buf
    1 checkpoints
    3 cfgtoollogs
    10 flash_recovery_area
    1377 diag
    8501 product


1 歸檔文件
 路徑:
    (SQL> archive log list  由Archive destination獲取歸檔路徑)
 方法:
    經過rman刪除歸檔文件
    [oracle@test-for-lihb ~]$ rman target /
    RMAN> delete archivelog all completed before 'sysdate-1'; (「1」對應是一天,若想刪除6小時前的歸檔日誌,則改成0.25)
    刪除完歸檔,如有對應的備份策略須要從新啓動全備。

2 alert告警日誌文件
 路徑:
    /alert_.log (由SQL> show parameter background_dump_dest/core_dump_dest/user_dump_dest獲取日誌文件位置)
 方法:
    1)將alert_.log清空 >alert_.log  (建議:tail -100000 alert_.log > alert_.log_bak20170601,保留10w行數據再刪除)
    2)系統會自動生成新的alert_.log
    3)find . -mtime +30 -name "*.trc/trm" | wc -l 查看一個月以前的trc/trm文件數量
    4)find . -mtime +30 -name "*.trc/trm" | xargs rm -rf  刪除一個月以前的trc/trm文件

3 監聽日誌文件
 路徑:
    $ORACLE_HOME/network/log/listener.log (由$ lsnrctl status $監聽名 中的Listener Log File 獲取日誌文件位置)
 如果log文件
    方法一:
        1)lsnrctl set log_status off
        2)將listener.log  刪除或者移走(建議:tail -100000 listener.log > listener.log_bak20170601,保留10w行數據再刪除)
        3)lsnrctl set log_status on此時系統從新生成listener.log 
    方法二:
        1)直接清空log文件:>listener.log (建議:tail -100000 listener.log > listener.log_bak20170601,保留10w行數據再刪除)
 如果xml文件
    方法:
        保留log.xml,其餘能夠刪除,好比:find . -mtime +30 -name "log_*.xml" | xargs rm -rf 
        同時,可清理同級trace目錄的log文件:
        cd ../trace
        tail -100000 listener.log > listener.log_bak20170601
        >listener.log

4 OEM日誌文件
 路徑:
    $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole__/log/http-web-access.log或em-application.log
 方法:
    查看OEM狀態:$ emctl status dbconsole
    若沒有運行,則
    直接把http-web-access.log/em-application.log挪走或刪除。
    若正在運行,則
    中止dbconsole(emctl stop dbconsole),
    將http-web-access.log/em-application.log挪走或刪除,
    從新啓動dbconsole(emctl start dbconsole),
    檢查oem狀態(emctl start dbconsole)。

5 CRS日誌文件
 路徑:
    11g:grid用戶:$ORACLE_HOME/log/$HOSTNAME/crsd/crsdOUT.log (默認會保留10個歷史記錄,每一個10M,文件名爲 crsd.l01/02/03...)
    10g:grid用戶:$ORA_CRS_HOME/log/$HOSTNAME/crsd/
 方法:
    清理歷史crsd.l0*文件,保留crsdOUT.log和crsd.log
    其餘同級目錄agent/cssd/gipcd/mdnsd/ctssd/ohasd的清理方法與crsd目錄相似

6 審計文件
 路徑:
    (SQL> show parameter audit_file_dest查看)
 方法:
    清除7天之前的審計文件:find . -mtime +7 -name "*.aud" | xargs rm -rf
 css

相關文章
相關標籤/搜索