ORACLE停止監聽日誌檔案

like052629發表於2015-10-27

監聽(Listener)在預設情況下,會記錄日誌,記錄註冊操作、客戶端的連線等。預設(沒有設定log_file引數時)的檔案是$ORACLE_HOME/network/log/listener.log。對於一些使用短連線的,頻繁的連線資料庫的,listener.log增長很快。有的可以在比較短的時間內(十幾天)就可以超過2GB。對於一些平臺的某些版本的Oracle,在監聽日誌增大到2GB以後會導致監聽不能正常工作(我沒遇到過,不過感興趣的朋友可以在網上搜尋一下,有這樣的案例)。

對於這種listener.log增長非常迅速的,可以關閉監聽日誌,不讓監聽寫日誌到檔案。也可以寫個job定期清理。本文主要描述怎麼樣關閉監聽日誌:

可以在監聽行介面中使用命令:
D:\>lsnrctl

LSNRCTL for 32-bit : Version 9.2.0.1.0 - Production on 15-10月-2008 20:52:11

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

歡迎來到LSNRCTL,請鍵入”help”以獲得資訊。

LSNRCTL> set log_status off
正在連線到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dreamf)(PORT=1521)))
LISTENER 引數 \log_status\ 被設為 OFF
命令執行成功
LSNRCTL> save_config
正在連線到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dreamf)(PORT=1521)))
未儲存對LISTENER所作的更改
命令執行成功
LSNRCTL>

#----ADDED BY TNSLSNR 15-10月-2008 10:05:43---
LOGGING_LISTENER = OFF

所以我們也可以在listener.ora檔案增加上面的內容來關閉監聽日誌。但是隻有在監聽重啟後才會生效,而透過lsnrctl 這個命令介面,可以立即生效,Windows平臺上的檔案會立即關閉。因此可以利用這個特性,用來刪除WINDOWS平臺上的監聽日誌檔案,因為不這樣,在監聽執行時監聽日誌是不能刪除的。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28258625/viewspace-1816466/,如需轉載,請註明出處,否則將追究法律責任。

相關文章