使用诊断文件监视例程
一、诊断文件
诊断文件是获取有关数据库活动的信息的一种方式,用于解决数据库出
现的一些 问题,主要包含有关数据库中出现的重要事件的一些信息,这些文
件能更好的对数据库进行日常的管理
主要类型有一下几种
1.alertSID.log.文件:记录数据库日常操作的信息
2.后台跟踪文件(background trace file):记录SMON、PMON、
DBWn和其他后台进程失败时产生的重要信息
3.用户跟踪文件(user trace file):记录出现严重的用户错误或用户强
制执行跟踪文件时产生的重要信息
二、alert.log警报日志文件
1.alertSID.log:每个oracle例程都有一个警报日志文件。如果该文件尚
未创建,将在例程启动过程中进行创建,警报日志会随着数据库的继续运行
而不断增长,诊断日常操作或错误时,应该首先查看警报日志文件。警报日
志文件还包含指向跟踪文件的指针,从而可获得更详细的信息。
2.警报日志文件记录了一下信息
数据库启动或关闭的时间
所有非缺省初始化参数的列表
后台进程的启动
例程使用的线程正在向其中写入信息的日志序列号LGWR
有关日志切换的信息
表空间的创建和撤销段
已发出警报的声明
有关ORA-600等错误消息和区错误的信息
(小技巧:而且警报日志在数据库启动时,会读取参数文件的信息
并记录当时启动数据库所使用的参数,所以当参数文件丢失时,可以从警报
日志文件中读取上一次所使用的正确参数信息,来创建一个pfile文件,从而
启动数据库。)
3.警报日志文件中记录的每个条目都带有与之相关联的时间戳
4.只有DBA有权限对其进行管理
5.存储位置有background_dump_dest定义,可以使用show
parameter background_dump_dest命令查看警报日志文件所在操作系统
中的位置。
三、后台跟踪文件
后台跟踪文件用于记录后台进程(如SMON、PMON、DBWn和其他
后台程序)遇到的错误,只有出现需要写入跟踪文件的错误时,才会创建后
台跟踪文件。最初创建后台跟踪文件后,文件内包含数据库服务器和操作系
统的标头信息。
命名规则为:sid_processname_PID.trc
其存储位置也由background_dump_dest定义,可以使用show
parameter background_dump_dest命令查看后台跟踪文件所在操作系统
中的位置。
四、用户跟踪文件
1.用户跟踪文件可由用户进程和服务器进程生成,其中主要包含用户执
行的SQL语句的统计信息,还包含用户错误信息。
2.在用户遇到会话错误时创建
3.存储位置由user_dump_dest定义,可以使用show parameter
user_dump_dest命令查看用户跟踪文件所在操作系统中的位置。
4.其大小有max_dump_file_size定义
5.命名规则为:sid_ora_PID.trc
6.启用或禁用用户跟踪文件的命令
会话级别:只会启用用户当前会话的用户跟踪文件
alert session set SQL_trac=true
例程级别:会启动整个例程的用户跟踪文件,如果是负载比较大的
生产型数据库,不建议开启例程级别的用户跟踪文件,因为用户跟踪文件会
记录所有用户的操作,这样如果操作比较多会影响到数据库性能,而且当时
间长了之后用户跟踪文件会变的非常大,然后占用很大的磁盘容量。
SQL_trace=true