谁有oracle官网账号密码Windows/Linux下Oracle监听日志过大无需重启数据库服务的处理方法

1. Oracle 监听日志介绍

Oracle监听器日志文件是一个纯文本文件,它的大小是一直不断增长的。它通常位于:“$ORACLE_HOME/network/log”目录下,与sqlnet.log日志文件处于同一路径;其缺省的文件名为listener.log,对于非缺省的监听器,则产生的日志文件通常为listeneroracle账号name.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 metalink账号分类目录,贴了标签。将固定链接加入收藏夹。