Windows/Linux下Oracle监听日志过大无需重启数据库服务的处理方法

1. Oracle 监听日志介绍

        Oracle监听器日志文件是一个纯文本文件,它的大小是一直不断增长的。它通常位于:“$ORACLE_HOME/network/log”目录下,与sqlnet.log日志文件处于同一路径;其缺省的文件名为listener.log,对于非缺省的监听器,则产生的日志文件通常为listenername.log;该文件缺省由监听器自动创建,当日志文件丢失时或不存在时,会自动重新创建一个同名的文件,与alert_<SID>.log文件类似;该文件的尺寸会不断自动增长,当尺寸过大时(超过2G数据库变慢,超过4G数据库将可能无法连接)或不便于阅读时,应考虑将其备份。


2. 查看监听日志大小

        不管在Windows环境下,或者Linux环境下均可根据上文中日志位置或者根据日志文件名查找监听日志文件大小。


3. 日志文件的备份和重命名

        Oracle监听器在运行时不允许对日志文件做删除,重命名操作,可以设置日志状态为ON或OFF来实现启用或关闭日志。

        在日志文件过大的情况下,可使用不停止监听的情况下对日志文件重命名以实现备份。

a) Windows环境下

        C:\> cd D:\oracle\product\10.2.0\db_1\NETWORK\log        --切换到监听器日志文件所在目录             

        D:\oracle\product\10.2.0\db_1\NETWORK\log> lsnrctl set log_status off        --暂停或脱机记录日志文件        

        D:\oracle\product\10.2.0\db_1\NETWORK\log> rename listener.log listener.old150424         --重命名日志文件,一般加上日期

        D:\oracle\product\10.2.0\db_1\NETWORK\log> lsnrctl set log_status on         --联机监听器日志文件,会自动重新创建一个新的日志文件

b) Unix/Linux环境下

        $lsnrctl  set  log_status  off 

        #mv  listener.log  listener.old150424

        $lsnrctl  set  log_status  on


另,

        若Oracle双机集群,有“listener_scan1.log”日志,往往也会不断增长到很大,此日志文件可以直接清空。如在Linux系统下的操作方法:

        #cat /dev/null > /oracle/12c/grid/log/diag/tnslsnr/dba1/listener_scan1/trace/listener_scan1.log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值