Oracle日志主要位于 $ORACLE_BASE/diag/rdbms/<db_name>/<instance_name>/trace 目录下,其中包含警报日志(alert_<sid>.log)和跟踪文件(.trc)。
tail -f alert_<sid>.loggrep "ORA-" alert_<sid>.log(过滤错误信息)grep "ORA-" alert_<sid>.log | awk '{print $NF}' | sort | uniq -ctkprof <trace_file>.trc output=report.txt explain=user/password@db-- 示例步骤(需在SQL*Plus中执行)
EXEC DBMS_LOGMNR.START_LOGMNR(STARTSCN => <开始SCN>, ENDSCN => <结束SCN>);
SELECT * FROM V$LOGMNR_CONTENTS;
awrrpt.sql 生成性能分析报告,包含SQL执行、等待事件等。adrci show alert -tail -f 实时查看警报日志。注:分析前需确保已启用日志追加功能,并定期清理过期日志以避免占用存储空间。
参考来源: