天天看点

AIX 日志清理 监听日志清理--过大的Oracle监听日志文件处理

aix 日志清理 监听日志清理--过大的oracle监听日志文件处理

oracle监听器日志文件(通常叫做listener.log)是一个纯文本文件,它的大小是一直不断增长的,在一个生产oracle服务器上,dba会每日查看该文件,如检查监听器是否有异常停止,是否有恶意攻击连接等,当这个文件特别大的时候,打开和浏览文件内容时可能比较慢。这时可能会想到将当前的日志文件备份一下,然后重新创建一个新的日志文件,但oracle的监听器在运行时是不允许对其日志文件做删除,重命名操作,于是只有停止监听器。重命名后,再启动监听器,启动时会自动创建一个新的监听器日志文件,但这样客户端连接就会断开,本文介绍一种方法在不停止监听器的情况下,重命名监听器日志文件。

监听器命令(windows在命令行下操作,linux和aix均同命令) 

lsnrctl set log_status off     

lsnrctl set log_status on 

实例:aix、oracle10g

1、处理前(listener_p550a.log很大)

p550a:/home/oracle/database/network/log#ls -lt

总计 2356504

-rw-r--r--   1 oracle   dba      1195793131  3月11 09时59 listener_p550a.log

-rw-r--r--   1 oracle   dba        10698028  3月10 22时25 sqlnet.log

2、lsnrctl set log_status off

p550a:/#su - oracle

$ lsnrctl set log_status off  

lsnrctl for ibm/aix risc system/6000: version 10.2.0.3.0 - production on 11-mar-2011 10:02:38

copyright (c) 1991, 2006, oracle.  all rights reserved.

connecting to (address=(protocol=tcp)(host=)(port=1521))

listener parameter "log_status" set to off

the command completed successfully

3、移动文件到备份路径,释放空间

p550a:/home/oracle/database/network/log#mv listener_p550a.log /bak

4、lsnrctl set log_status on

$ lsnrctl set log_status on

lsnrctl for ibm/aix risc system/6000: version 10.2.0.3.0 - production on 11-mar-2011 10:06:12

listener parameter "log_status" set to on

5、再来看看,已经自动新建了listener_p550a.log

总计 20928

-rw-r--r--   1 oracle   dba             102  3月11 10时06 listener_p550a.log

p550a:/home/oracle/database/network/log#

继续阅读