-
alert.log:数据库实例的告警日志,记录了启动、关机、错误、告警信息。记录数据库一切"重要生命体征变化"。
-
listener.log:TNS Listener 的运行日志,记录连接请求、错误信息。记录每一次客户端连接、断开、失败、异常、攻击尝试。
-
其他日志(trace、incident、Data Pump、RMAN 等)通常体积小,或者按任务触发生成,不会像这两个日志那么持续占用磁盘空间。
它们都是 诊断/运维日志 ,不包含真实表数据,也不影响数据库的数据文件、redo、undo 等核心数据结构。
1、清理前取证:清理不会影响系统稳定运行。
root@anhuan \~# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_anhuan-lv_root
128G 107G 15G 88% /
root@anhuan \~# du -sh /u01/app/oracle/diag/tnslsnr/anhuan/listener
39G /u01/app/oracle/diag/tnslsnr/anhuan/listener

2、清理:ALERT+listener.log
2.1宿主机执行清理命令
--保留 90 天(分钟:129600)
ionice -c3 nice -n 19 su - oracle -c 'adrci exec="
set homepath diag/tnslsnr/anhuan/listener;
purge -age 129600 -type ALERT;
"'
--保留 60 天(分钟:86400)
ionice -c3 nice -n 19 su - oracle -c 'adrci exec="
set homepath diag/tnslsnr/anhuan/listener;
purge -age 86400 -type ALERT;
"'
2.2清理ALERT验收(只读):
df -h /
du -sh /u01/app/oracle/diag/tnslsnr/anhuan/listener
su - oracle -c "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl status"
3、清理listener.log
3.1保留最近 5000 行证据,然后清空:
sudo ionice -c3 nice -n 19 sh -c '
f=/u01/app/oracle/diag/tnslsnr/anhuan/listener/trace/listener.log
tail -n 5000 "f" \> "{f}.tail_$(date +%F_%H%M%S)"
: > "$f"
'
3.2清理listener.log验收(只读)
ls -lh /u01/app/oracle/diag/tnslsnr/anhuan/listener/trace/listener.log
df -h /
su - oracle -c "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl status"
4、清理后:清理不会影响系统稳定运行。
