oracle 11g的監聽日志和警告日志都是在/u01/oracle/diag/tnslsnr/oracle/listener目錄和/u01/oracle/diag/rdbms/db1/db1目錄下都有以下分別簡稱listener目錄和db1目錄。這兩目錄下都有如下目錄:alert cdump hm incident incpkg ir lck metadata stage sweep trace
其中警告日志在alert目錄下,監聽日志在trace目錄下。listener目錄下產生的日志文件比較大,是主要清理的對象,而db1目錄下產生的文件比較小,基本不需要清除。在listener目錄下監聽日志是一個名為listener.log的文件,而警告日志log.xml,這個日志每到11M左右就會分割成一個log_XXXX.xml的日志,逐漸累加。而在db1目錄下兩個日志的方式剛好相反,監聽日志分割成很多個以.trc .trm的文件,而警告日志只有一個log.xml的文件。不知道oracle在搞什麼鬼,也不知道原理是什麼。希望有了解的朋友給予指點。
刪除監聽日志的方法如下:
切換到oracle用戶
su oracle
$lsnrctl set log_status off
$mv listener.log /backup/
$lsnrctl set log_status on
監聽日志啟動後就會自動創建一個全新的listener.log文件,備份好的文件可以刪除。如果不執行上述的命令直接刪除listener.log,系統是不會創建的。
警告日志可以用以下命令移動或者刪除
find . -mtime +10 -exec mv {} /backup/alert_log/ \;
要看警告日志可以在oracle用戶下執行adrci
$adrci
在adrci目錄下可以輸入help可以看幫助命令。輸入help show alert,可以看到show alert的詳細用法。
show alert
會提示讓你選擇日志的目錄或者退出
adrci> show alert
Choose the alert log from the following homes to view:
1: diag/rdbms/db1/db1
2: diag/tnslsnr/oracle/listener
Q: to quit
Please select option: 1
輸入1就看db1下的,輸入2就看listener目錄下的,輸入q就退出。
看完alert的日志後輸入 :q退出,操作方法跟vi命令類似。
SHOW TRACEFILE
可以看到監聽日志文件
diag/rdbms/db1/db1/trace/db1_vktm_17064.trc
diag/rdbms/db1/db1/trace/db1_m000_25175.trc
diag/tnslsnr/oracle/listener/trace/ora_7795_139913618966240.trc
diag/tnslsnr/oracle/listener/trace/listener.log
從以上可以看出兩個目錄下都有日志。
可以!log都可以的!
刪除後等會生成的。
歸檔日志直接在系統刪除就可以了。
如果不需要歸檔日志,可以把它關閉掉。
startup mount;
alter database noarchivelog;
alter database open;