Oracle监听日志文件过大如何处理

Oracle监听器日志文件(通常叫做listener.log)是一个纯文本文件,它的大小是一直不断增长的,在一个生产Oracle服务器上,DBA会每日查看该文件,如检查监听器是否有异常停止,是否有恶意攻击连接等,当这个文件特别大的时候,打开和浏览文件内容时可能比较慢。这时可能会想到将当前的日志文件备份一下,然后重新创建一个新的日志文件,但Oracle的监听器在运行时是不允许对其日志文件做删除,重命名操作,于是只有停止监听器。重命名后,再启动监听器,启动时会自动创建一个新的监听器日志文件,但这样客户端连接就会断开,本文介绍一种方法在不停止监听器的情况下,重命名监听器日志文件。

监听器命令(WINDOWS在命令行下操作,LINUX和AIX均同命令)

lsnrctl set log_status off    

lsnrctl set log_status on

实例:AIX、ORACLE10G

1、处理前(listener_p550a.log很大)

p550a:/home/oracle/database/network/log#ls -lt

总计 2356504

-rw-r--r--   1 oracle   dba      1195793131  3月11 09时59 listener_p550a.log

-rw-r--r--   1 oracle   dba        10698028  3月10 22时25 sqlnet.log

2、lsnrctl set log_status off

p550a:/#su - oracle

$ lsnrctl set log_status off

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.3.0 - Production on 11-MAR-2011 10:02:38

Copyright (c) 1991, 2006, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

LISTENER parameter "log_status" set to OFF

The command completed successfully

3、移动文件到备份路径,释放空间

p550a:/home/oracle/database/network/log#mv listener_p550a.log /bak

4、lsnrctl set log_status on

$ lsnrctl set log_status on

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.3.0 - Production on 11-MAR-2011 10:06:12

Copyright (c) 1991, 2006, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

LISTENER parameter "log_status" set to ON

The command completed successfully

5、再来看看,已经自动新建了listener_p550a.log

p550a:/home/oracle/database/network/log#ls -lt

总计 20928

-rw-r--r--   1 oracle   dba             102  3月11 10时06 listener_p550a.log

-rw-r--r--   1 oracle   dba        10698028  3月10 22时25 sqlnet.log

p550a:/home/oracle/database/network/log#

时间: 2024-12-02 08:01:26

Oracle监听日志文件过大如何处理的相关文章

AIX 日志清理 监听日志清理--过大的Oracle监听日志文件处理

AIX 日志清理 监听日志清理--过大的Oracle监听日志文件处理 Oracle监听器日志文件(通常叫做listener.log)是一个纯文本文件,它的大小是一直不断增长的,在一个生产Oracle服务器上,DBA会每日查看该文件,如检查监听器是否有异常停止,是否有恶意攻击连接等,当这个文件特别大的时候,打开和浏览文件内容时可能比较慢.这时可能会想到将当前的日志文件备份一下,然后重新创建一个新的日志文件,但Oracle的监听器在运行时是不允许对其日志文件做删除,重命名操作,于是只有停止监听器.重

ORACLE清理、截断监听日志文件(listener.log)

       在 ORACLE数据库中,如果不对监听日志文件(listener.log)进行截断,那么监听日志文件(listener.log)会变得越来越大,想必 不少人听说过关于"LISTENER.LOG日志大小不能超过2GB,超过会导致LISTENER监听器无法处理新的连接",当然这个不是真理,不会绝对 出现,只是发生在老旧的32bit Linux或Unix系统下面,真实的原因是一些32bit OS自带的文件系统不支持2GB以上的文件,导致监听服务进程(tnslsnr)append

如何管理监听日志文件

1.到listener里面,查看对应的log_file和log_status [oracle@bys3 log]$ lsnrctl LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 06-DEC-2013 10:27:11 Copyright (c) 1991, 2013, Oracle.  All rights reserved. Welcome to LSNRCTL, type "help" for information.

oracle 11g 监听日志 设置

11g开始引入ADR,监听日志就从原来的$ORACLE_HOME/network/log/listener.log变为了 $ORACLE_BASE/diag/tnslsnr/hostname/listener/alert/log.xml 当然也存在一份$ORACLE_BASE/diag/tnslsnr/hostname/listener/trace/listener.log(此处listener.log的名字是根据监听名字决定的,比如我的监听叫TEST,此处就是test.log) 有个问题是,$

oracle 11g-oracle 11.2监听日志大量service update

问题描述 oracle 11.2监听日志大量service update 今天早上无法远程登录oracle,报tns超时,去看了监听日志,大量的service update信息,过了一段时间以后,再链接又能远程登录了,日志也变正常了,这是怎么一回事情,怎么排查这一类问题

服务-oracle监听关闭后无法启动了。

问题描述 oracle监听关闭后无法启动了. 我登录PL/SQL的时候提示无监听程序,我就把服务里面OracleOraDb10g_home1TNSListener关闭了,再启动就报错.网上一大堆乱七八糟的答案没一个有用的.有谁清楚怎么回事吗. 解决方案 监听文件有问题吧,怎么key=这打印出来的括号也没有匹配,看看listener.ora文件中写的格式是否有问题 解决方案二: 能不能直接把这个oracle服务给关闭了? 解决方案三: 如果你安装的是oracle完整版,可以用oracle自带的Ne

【Oracle】修改oracle监听端口

修改oracle 监听端口号,过程相对比较简单: 1 修改 listener.ora ,tnsnames.ora 文件中的端口号 2 重启监听 lsnrctl stop ,lsnrctl start 上面的过程是对于 监听名为默认的LISTENER 而言的,如果listener.oar文件中的监听名不是默认的,就重启时必须指定监听名.比如将端口号由1521改为1523 oracle@rac3:/opt/oracle/11.2.0/alifpre/network/admin>vi listener

[20130422]修改oracle监听端口.txt

[20130422]修改oracle监听端口.txt 昨天朋友想尝试修改oracle的缺省监听端口,测试没有通过,而我在我的测试机器通过,通过对比监听文件,我发现其中的差异,问题出在动态注册以及静态注册的问题,把一些测试记录下来,便于理解动态以及静态注册监听的问题. 1.测试环境: SQL> @verBANNER--------------------------------------------------------------------------------Oracle Databa

Linux下修改Oracle监听地址

如果你的服务器换了ip怎么办? 如果你的服务器换了名字怎么办? 以前的小伙伴怎么办? 以前的老客户怎么办? 没关系,简单教你修改监听地址,老朋友随便找! 想要修改监听地址首先要找到两个文件,确定两样东西! 第一 你的主机名字? 第二 你的IP地址? 第三 你的listener.ora在哪里? 第四 你的tnsnames.ora在哪里? 原来的文件监听的是localhost,这个名字在/etc/hosts中会被映射成Ip地址127.0.0.1 lisenter.ora 目录在 /opt/oracl