技术分享
Oracle备份监听日志
2020-04-21
Oracle 监听器日志检查
1. Oracle 监听日志介绍
Oracle监听器日志文件是一个纯文本文件,它的大小是一直不断增长的。它通常位于:“$ORACLE_HOME/network/log”目录下,与sqlnet.log日志文件处于同一路径;其缺省的文件名为listener.log,对于非缺省的监听器,则产生的日志文件通常为listenername.log;该文件缺省由监听器自动创建,当日志文件丢失时或不存在时,会自动重新创建一个同名的文件,与alert_<SID>.log文件类似;该文件的尺寸会不断自动增长,当尺寸过大时(超过2G数据库变慢,超过4G数据库将无法连接)或不便于阅读时,应考虑将其备份。
2. 查看监听日志大小
1) Windows下查看监听日志大小
可以通过lsnrctl监听器控制程序与监听器进行交互和控制操作,使用status命令,可以获取到当前监听器状态信息。
打开CMD窗口,输入“lsnrctl status”:
找到日志目录,查看日志大小:
2) Unix/Linux下查看监听日志大小
***:/home/oracle/database/network/log#ls -lt
总计 2356504
-rw-r--r-- 1 oracle dba 1195793131 9月9 21时59 listener_p550a.log
-rw-r--r-- 1 oracle dba 10698028 9月1 22时25 sqlnet.log
3. 日志文件的备份和重命名
Oracle监听器在运行时不允许对日志文件做删除,重命名操作,可以设置日志状态为ON或OFF来实现启用或关闭日志。
在日志文件过大的情况下,可使用不停止监听的情况下对日志文件重命名以实现备份。
1) 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.old -->重命名日志文件,一般加上日期
D:\oracle\product\10.2.0\db_1\NETWORK\log> lsnrctl set log_status on -->联机监听器日志文件,会自动重新创建一个新的日志文件
2) Unix/Linux下
$ lsnrctl set log_status off
$ mv listener.log listener.old -->另一种方法,cp listener.log /log/bak/. 然后 cp /dev/null >listener.log
$ lsnrctl set log_status on
4. 备份日志文件的处理
日志文件备份后,可根据现场情况进行自行处理:
如数据库出现异常,可根据日志文件进行检查。
如数据库运行正常,可将备份文件删除。

- 标签:
-
容灾备份