這里我們看2個比較常用的操作。
1. 停止寫listener log
在某些特定的場合可能會有這樣的需求。控制這個功能的參數是LOG_STATUS。 官網對這個參數的說明:To turn listenerlogging on or off.
--在OS層面直接使用:
lsnrctl SET LOG_STATUS {on | off}
--在LSNRCTL 工具中使用:
LSNRCTL> SET LOG_STATUS {on | off}
--查看log_status狀態:
LSNRCTL> show log_status
Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
LISTENER parameter "log_status"set to ON
The command completed successfully
說明:
之前遇到一個很奇怪的問題,就是log_status狀態是on,但是listener就是不寫日志,再次手工設置為on后,又正常寫日志。
LSNRCTL> setlog_status off
Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
LISTENER parameter "log_status"set to OFF
The command completed successfully
LSNRCTL> showlog_status
Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
LISTENER parameter "log_status"set to OFF
The command completed successfully
LSNRCTL> setlog_status on
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
LISTENER parameter "log_status"set to ON
The command completed successfully
LSNRCTL> showlog_status
Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
LISTENER parameter "log_status" setto ON
The command completed successfully
2. 保存listener 的修改
保存又參數:SAVE_CONFIG控制,官網的說明:
To save the current configuration state of the listener, includingtrace level, trace file, trace directory, and logging tothe listener.ora file. Any changes are stored in listener.ora,preserving formatting, comments, and case as much as possible. Beforemodification of the listener.ora file, a backup of the file,called listener.bak, is created.
我們在第一部分修改了log_status 的配置,如果沒有保存,那么在重啟監聽之后,修改就會失效,所以這里要保存,才能永久的生效。
LSNRCTL> save_config
Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.4)(PORT=1521)))
Saved LISTENER configuration parameters.
Listener Parameter File /u01/app/Oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Old Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.bak
The command completed successfully
注意:
這里使用的是默認的listner,如果不是默認的,就需要加上listener_name. 如:
LSNRCTL> SAVE_CONFIG listener_name
保存之后,修改的內容就會寫入listener.ora 文件。
這里是我的的測試環境,其中listener.ora 文件多了如下內容:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
#----ADDED BY TNSLSNR 22-DEC-201221:59:58---
LOGGING_LISTENER = ON
#--------------------------------------------