Oracle删除或清理监听日志文件的方法
作者:夜光小兔纸
当Oracle 监听器的日志文件(通常称为 trace 文件或跟踪文件)达到其最大容量时,可能会出现以下几种情况:客户反映数据库有卡顿、程序无法连接,所以本文给大家介绍了Oracle如何正确清理监听文件,需要的朋友可以参考下
Oracle 监听日志(listener log)文件确实可能越积越大,占用大量磁盘空间。
下面是安全删除或清理 Oracle 监听日志文件的方法介绍 。
1.查看日志文件位置
$ lsnrctl status
在输出中会看到类似如下内容:
Listener Log File /u01/app/oracle/diag/tnslsnr/dbserver/listener/trace/listener.log
2.安全清理方法
不要直接删除正在被监听器写入的日志文件,否则可能导致监听器报错或无法写日志。推荐以下几种安全方式:
方式一:使用 lsnrctl 重新启监听(推荐)
1)停止监听
$ lsnrctl stop
2)删除或重命名日志
切换到监听文件所在路径: $ cd /u01/app/oracle/diag/tnslsnr/dbserver/listener/trace $ mv listener.log listener.log.bak
3)启动监听
$ lsnrctl start
Oracle 会自动创建一个新的空的 listener.log 文件。
之后可以删除旧的备份文件:
$ rm listener.log.bak
方式二:在线截断日志(不中断监听)
如果不能停止监听,可以用重定向清空日志文件:
$ cd /u01/app/oracle/diag/tnslsnr/dbserver/listener/trace $ cat /dev/null > listener.log
这样会保留文件句柄,监听器仍可继续写入,不影响服务。
到此这篇关于Oracle删除或清理监听日志文件的方法的文章就介绍到这了,更多相关Oracle删除监听日志文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
