先介绍一下背景:本人下文中论述的各类日志文件所在路径和信息描述都是在Windows Server R2 Standard的操作系统中,Oracle版本为12.1.0.1,搭建了了2个节点的Rac。
一、警报日志(alert log)
当出错时,Oracle通常将相关消息写入警报日志(alert log),但在后台进程或用户会话的情况下,会将消息写入跟踪日志(trace log)。
警报日志中记录的只是Oracle自己的出错信息,不是所有代码以ORA-开始的错误信息都记录在警报日志中。比如ORA-17001到ORA-18000范围的错误代码,ORA-17001到ORA-17499是JDBC生成的错误信息,从ORA-17500到ORA-18000才是Oracle软件生成的错误代码。再比如ORA-28002这些提示密码到期的错误提示都不会写入警报日志。
文件位置:警报日志文件位于由初始参数backgroud_dump_dest指定的目录中,它包含例程状态信息和错误条件。
文件名:alert_实例名.log。可以在任何时间删除或重命名警报日志文件。
记录内容:
- 启动或关闭数据库时,在警报日志中记录一条信息,同时记录不同于默认值的初始参数列表
- DBA提交的任何ALTERDATABASE或ALTER SYSTEM命令
- 涉及表空间及数据文件的操作,例如添加、删除表空间及将数据文件添加到表空间
- 错误条件,如空间不足的表空间、损坏的重做日志等
二、跟踪日志(trace log)
一般存放session追踪的信息,使用show parametr user_dump_dest查看
三、审计日志(audit log)
审计日志保存审计的信息。
文件位置:审计日志文件位于由初始参数audit_file_dest指定的目录中。
四、重做日志(redo log)
重做日志文件用以存放数据库的更改信息,也就是说无论何时在表、索引或其他Oracle对象中添加、删除或改变数据,都会将一个条目写入当前的重做日志文件。
文件位置:通过视图v$logfile查看当前实例的重做日志文件存放路径
select * from v$logfile;
五、归档日志
归档日志是重做日志的历史备份信息。
文件位置:通过下列SQL语句可以查询
select * from v$parameter where name like '%log_archive_dest%'