Oracle 不停库清理监听日志


1:首先停止监听服务进程(tnslsnr)记录日志。

lsnrctl set log_status off;

 

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

cp listener.log listener.log.20191209

 

3、将监听日志文件(listener.log)清空。清空文件的方法有很多

cat /dev/null > listener.log

或echo “” > listener.log

或cp /dev/null listener.log

4:开启监听服务进程(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"

 

如果是RAC环境需要登录到grid用户清理listener.log和listener_scan1.log日志。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM