『ORACLE』 清理监听日志(11g)

时间:2020-12-12 08:18:57

停止监听服务进程(tnslsnr)记录日志。
lsnrctl  set log_status off; 

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

将监听日志文件(listener.log)清空。

cat /dev/null > listener.log

开启监听服务进程(tnslsnr)记录日志
lsnrctl set log_status on;

对于这种listener.log增长非常迅速的系统,可以关闭监听日志lsnrctl  set log_status off,不让监听写日志到文件。也可以写个job定期清理。

rq=` date +"%d" `
cp $ORACLE_HOME/network/log/listener.log $ORACLE_BACKUP/network/log/listener_$rq.log
su - oracle -c "lsnrctl set log_status off"
cp /dev/null $ORACLE_HOME/network/log/listener.log
su - oracle -c "lsnrctl set log_status on"