在oracle数据库中,如果不对监听日志listener.log进行处理,那么listener.log会变得越来越大,如果在32位bit linux或Unix系统中,32bit自带的文件系统不支持2G以上的文件,会

导致监听服务进程(tnslsnr) append write日志文件出错,一般64bit中,listener.log不会超过4G,超过4G的话日志不再进行写入。

监听文件过大,正确的处理方法:

1.停止监听服务进程(tnslsnr)记录日志

[oracle@DB-Server log]$ lsnrctl  set log_status off;


The command completed successfully

2.将监听日志文件listener.log复制一份,以listener.log.yyyymmdd格式命名

[oracle@DB-Server log]$ cp listener.log listener.log.xxxx

3.将监听日志文件listener.log清空

[oracle@DB-Server log]$echo /dev/null listener.log 

或者 cat /dev/null > listener.log

4.查看日志文件是否清空

[oracle@DB-Server log]$ls -l

5.确认清空之后开启监听服务进程(tnslsnr)记录日志

[oracle@DB-Server log]$ lsnrctl  set log_status on;

到此完成

还有一种方法是对监听日志文件进行截断维护,不过这种方法会产生报错

截断维护的方法

A.[oracle@DB-Server log]$ mv listener.log listener.log.20150114

B.[oracle@DB-Server log]$ cp /dev/null listener.log

C.[oracle@DB-Server log]$ more listener.log

如上所示,这样截断监听日志(listener.log)后,监听服务进程(tnslsnr)并不会将新的监听信息写入listener.log,而是继续写入listener.log.20150114

[oracle@DB-Server log]$  tail listener.log.20150114

15-JAN-2015 22:40:01 * service_update * EPPS * 0

15-JAN-2015 22:47:59 * service_update * EPPS * 0

15-JAN-2015 22:58:00 * service_update * EPPS * 0

15-JAN-2015 23:08:00 * service_update * EPPS * 0

15-JAN-2015 23:18:01 * service_update * EPPS * 0

15-JAN-2015 23:28:01 * service_update * EPPS * 0

15-JAN-2015 23:38:02 * service_update * EPPS * 0

15-JAN-2015 23:41:02 * service_update * EPPS * 0

15-JAN-2015 23:50:26 * ping * 0

15-JAN-2015 23:51:03 * service_update * EPPS * 0

[oracle@DB-Server log]$  tail listener.log.20150114

15-JAN-2015 23:18:01 * service_update * EPPS * 0

15-JAN-2015 23:28:01 * service_update * EPPS * 0

15-JAN-2015 23:38:02 * service_update * EPPS * 0

15-JAN-2015 23:41:02 * service_update * EPPS * 0

15-JAN-2015 23:50:26 * ping * 0

15-JAN-2015 23:51:03 * service_update * EPPS * 0

15-JAN-2015 23:57:40 * ping * 0

15-JAN-2015 23:57:41 * ping * 0

15-JAN-2015 23:57:42 * ping * 0

15-JAN-2015 23:57:43 * ping * 0

[oracle@DB-Server log]$ more listener.log

[oracle@DB-Server log]$