oracle清理trace、alert、aud、listener等日誌檔案
oracle清理trace、alert、aud、listener等日誌檔案
文章目錄
0、注意事項
1、資料庫各項日誌檔案路徑
2、手工方式清理日誌檔案
3、使用oracle自帶工具清理
0、注意事項
資料庫產生的執行日誌不是隨便可以清理的,特別是有故障或者長期分析一個妖孽的問題時,清理日誌之前一定要做好備份工作。
1、資料庫各項日誌檔案路徑
檢視oracle各類日誌的方法:如果是rac,asm例項下查詢方法一樣
1)檢視診斷日誌:
11g以及以上版本全新的診斷資訊架構,檢視v$diag_info資訊,展示日誌目錄:
show parameter diag;
select * from v$diag_info
輸出例子如下:
1 ADR Base
/u01/app/oracle
1 ADR Home
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g
1 Diag Trace
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/trace
1 Diag Alert
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/alert
1 Diag Incident
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/incident
1 Diag Cdump
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/cdump
1 Health Monitor
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/hm
1 Default Trace File
/u01/app/oracle/diag/rdbms/orcl11g/orcl11g/trace/orcl11g_ora_61174.trc
11g以下檢視方式:
sqlplus / as sysdba
SYS@orcl1 > show parameter dump_dest;
NAME TYPE VALUE
background_dump_dest string /u01/app/oracle/diag/rdbms/orcl11g/orcl11g/trace
core_dump_dest string /u01/app/oracle/diag/rdbms/orcl11g/orcl11g/cdump
user_dump_dest string /u01/app/oracle/diag/rdbms/orcl11g/orcl11g/trace
說明:
background_dump_dest /* 存放資料庫後臺程式除錯資訊,與記錄影響例項、資料庫的trace檔案和alert日誌檔案,11gR1之後,預設忽略此引數設定,根據diagnostic_dest存放
diagnostic_dest /* 11gR1之後,引入,後臺程式與alert告警日誌會根據ADR base目錄存放
user_dump_dest /* 存放使用者程式除錯trace檔案,11gR1之後,引入新的診斷架構這個引數將被忽略,由diagnostic_dest控制trace檔案生成目錄
core_dump_dest /* 存放Oracle核心轉儲檔案
2)檢視審計日誌:
SYS@orcl1 > show parameter audit_file_dest;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/orcl/adump
audit_file_dest
路徑下存放的是資料庫審計資訊檔案,如果設定audit_trail為NONE,則預設此目錄只存放SYSDBA身份登陸審計資訊。
注意,asm例項下面看到的路徑可能不一樣,比如:
audit_file_dest string /u01/app/12.2.0/grid/rdbms/audit
3)檢視監聽日誌位置:
[oracle@onetest ~]$ lsnrctl status
Listener Parameter File /u01/app/oracle/product/19.0.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/onetest/listener/alert/log.xml
注意,除了監聽xml日誌,還有listener.log日誌位於/u01/app/oracle/diag/tnslsnr/onetest/listener/trace目錄下
2、手工方式清理日誌檔案
情況1:清理單個較大日誌檔案,alert_sid.log、listener.log等
SQL> select * from v$diag_info where name='Diag Trace';
/u01/app/oracle/diag/rdbms/orcl/orcl/trace
[oracle@orclr01 trace]$cd /u01/app/oracle/diag/rdbms/orcl/orcl1/trace
[oracle@orclr01 trace]$ ls -lrt alert*
[oracle@orclr01 trace]$cp alert_orcl1.log /data/backlog/oralog/alert_orcl1.log -`date +"%Y%m%d"`
[oracle@orclr01 trace]$echo 0 > alert_orcl1.log
CPU空閒時操作:
cd /data/backlog/oralog
gzip 剛才備份的alert日誌檔案
說明:透過echo的方式清理,可以保持檔案的屬性,不影響zabbix監控alert日誌。
1
情況2:清理上萬個小的日誌檔案,trc日誌、aud審計日誌等
asm例項下:
show parameter audit_file_dest
cd /u01/app/11.2.0/grid/rdbms/audit
清理前可選擇備份:
find . -mtime +30 -name \*.aud -exec mv {} /oralog_bak \;
或者直接刪除:
find . -name "*.aud" -mtime +30 -type f | xargs rm -rf
其它型別的日誌檔案類似,替換為*.trc即可
如果開啟了資料庫審計日誌,那需要在資料庫中清理aud$審計表
3、使用oracle自帶工具清理
使用adrci清理trace和acident日誌
$ adrci
adrci> show home
adrci> set homepath diag/rdbms/orcl/orcl1
adrci> help purge # 可根據清理多少分鐘前的資料,也可以show problem檢視日誌中錯誤資訊
adrci> purge -age 14400 -type incident #14400的單位是分鐘
adrci> purge -age 14400 -type trace
也可以在adrci中設定trace檔案保留的策略:
adrci> show control #檢視可以設定的策略
adrci> help set control
set control (SHORTP_POLICY = 720) #720的單位是小時
12c以及以上版本部署purgeLogs工具
可能是oracle自己也知道從9i ~ 19c版本,日誌位置不斷變化,日誌也越來越多,翻不了了,官方出了專門清理日誌的工具。
MOS文件:purgeLogs: Cleanup traces, logs in one command (Doc ID 2081655.1)
工具使用參考:
Usage:
purgeLogs [-days <days> [-aud] [-lsnr]] |
[-orcl <days> [-aud] [-lsnr]] |
[-tfa <days>] |
[-osw <days>] |
[-oda <days>] |
[-extra '<folder>':<days> | [, '<folder>':<days>]]
[-automigrate]
[-dryrun]
purgeLogs OPTIONS
-days <days> Purge orcl,tfa,osw,oak components logs & traces older then # days
-orcl <days> Purge only GI/RDBMS logs & traces (Default 30 days)
-tfa <days> Purge only TFA repository older then # days (Default 30 days)
-osw <days> Purge only OSW archives older then # days (Default 30 days)
-oda <days> Purge only OAK/DCS logs and trace older then # days (Default 30 days)
-extra '<folder>':<days> Purge only files in user specified folders (Default 30 days)
-aud Purge Audit logs based on '-orcl <days>' option
-lsnr It will force the cleanup of listeners log independently by the age
-dryrun It will show the purge commands w/o execute them
-automigrate It will run the adrci schema migrate commands in case of DIA-49803
-h Display this help and exit
Example:
purgeLogs
purgeLogs -days 20
purgeLogs -orcl 50
purgeLogs -orcl 50 -aud -lsnr
purgeLogs -tfa 50
purgeLogs -osw 20 -oda 10
purgeLogs -orcl 20 -osw 20 -oda 10
purgeLogs -orcl 20 -osw 20 -oda 10 -extra /tmp:10,/var/log:20
————————————————
版權宣告:本文為CSDN博主「獨孤清揚玩DB」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/u010033674/article/details/106238817
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26224914/viewspace-2894417/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle清理trace、alert、aud、listener.log檔案Oracle
- 歸檔oracle alert日誌Oracle
- oracle alert日誌Oracle
- Oracle歸檔日誌清理Oracle
- listener_scan1.log、listener.log監聽日誌清理
- 【LOG】Oracle資料庫清理日誌、跟蹤檔案利器Oracle資料庫
- [20210622]logrotate清除oracle aud檔案的問題.txtlogrotateOracle
- oracle 資料庫lsnrctl監聽的日誌路徑和trace檔案Oracle資料庫
- 日誌檔案過大清理
- Oracle listener log 日誌分析方法Oracle
- [20220826]顯示alert日誌檔案全路徑.txt
- 運用Log和Trace檔案排除Oracle Net問題Oracle
- oracle 11g檢視alert日誌方法Oracle
- oracle ebs 根據請求id找到對應trace 檔案Oracle
- oracle監聽檔案listener.ora for 10g/11gOracle
- Oracle session traceOracleSession
- Linux 使用 crontab 定時拆分日誌、清理過期檔案Linux
- VSCode 檔案清理VSCode
- 【Oracle】如何修改資料檔案和日誌檔案的路徑Oracle
- Oracle 10046 SQL TRACEOracleSQL
- [20211013]Oracle 19c新特性Listener自動清理(Network Log File Segmentation).txtOracleSegmentation
- Oracle使用備份檔案集恢復歸檔日誌Oracle
- 【ADRCI】使用ADRCI (ADR Command Interpreter) 工具檢視Oracle alert警告日誌Oracle
- [20200225]alert檔案亂碼問題.txt
- oracle歸檔日誌Oracle
- 分析Oracle資料庫日誌檔案(三)EPOracle資料庫
- 分析Oracle資料庫日誌檔案(二)DOOracle資料庫
- 分析Oracle資料庫日誌檔案(一)HBOracle資料庫
- 在Oracle中,如何定時刪除歸檔日誌檔案?Oracle
- nginx日誌檔案按天記錄定時清理迴圈記錄Nginx
- PostgreSQL的xlog/Wal歸檔及日誌清理SQL
- Oracle OCP(43):listener.oraOracle
- Oracle listener log配置與管理Oracle
- oracle-listener 4GOracle
- 為什麼我們需要Logstash,Fluentd等日誌攝取器?
- Laravel 路由快取檔案清理Laravel路由快取
- iPhone檔案垃圾清理工具iPhone
- [20230303]學習UNIFIED audit--定期清理AUDSYS.AUD$UNIFIED.txtNifi