在 Linux 上查看 Oracle 日志,通常分为 Oracle 自身日志 和 操作系统 / 监听日志 两类。下面按常见场景给你总结:
Alert Log 记录数据库启动、关闭、报错等关键信息。
SQL> show parameter background_dump_dest;
或(11g/12c+):
SQL> select value from v$diag_info where name='Diag Trace';
常见路径示例:
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log
tail -f alert_orcl.log
或
less alert_orcl.log
记录客户端连接、监听启动等信息。
lsnrctl status
常见路径:
$ORACLE_HOME/network/log/listener.log
tail -f $ORACLE_HOME/network/log/listener.log
| 日志类型 | 说明 | 位置 |
|---|---|---|
| Alert Log | 数据库核心日志 | diag/rdbms/…/trace |
| Listener Log | 监听连接日志 | $ORACLE_HOME/network/log |
| Trace File | 后台进程错误 | diag/rdbms/…/trace |
| Audit Log | 审计日志 | diag/rdbms/…/audit |
| Alert XML | 新版本格式 | diag/rdbms/…/alert |
grep -i "ORA-" alert_orcl.log | tail -50
tail -f alert_orcl.log
sed -n '/2026-01-21 10:00/,/2026-01-21 11:00/p' alert_orcl.log
$ORACLE_BASE/admin/ORACLE_SID/bdump/alert_ORACLE_SID.log
$ORACLE_BASE/diag/rdbms/ORACLE_SID/ORACLE_SID/trace/alert_ORACLE_SID.log
ps -ef | grep pmon
或
echo $ORACLE_SID
如果你愿意,可以告诉我:
我可以直接给你对应命令。