Oracle告警日志和跟踪文件

本文详细介绍了Oracle数据库中的各类日志与跟踪文件的作用、位置及内容,包括告警日志、跟踪文件和核心转储文件。阐述了告警日志的重要性和内容,以及如何定期清理告警日志。同时,解释了跟踪文件和核心转储文件的用途和位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 相关参数

SQL> select name,value from v$parameter where name like '%dump_dest%';

NAME                     VALUE
--------------------     --------------------------------------------------
background_dump_dest     /u01/app/oracle/diag/rdbms/racdb/racdb1/trace
user_dump_dest           /u01/app/oracle/diag/rdbms/racdb/racdb1/trace
core_dump_dest           /u01/app/oracle/diag/rdbms/racdb/racdb1/cdump

2 告警日志

2.1 告警日志的位置及内容

告警日志文件的名称通常为alert_<sid>.log,用来记录Oracle系统的运行信息和错误信息。
运行信息一般包括Oracle实例的启动与关闭、建立表空间、增加数据文件等;
错误信息包括空间扩展失败、启动实例失败等。

  • 告警日志目录记录在参数background_dump_dest

  • 告警日志内容:
    告警日志非常关键与重要,那么告警日志里面包含了那些内容信息呢?告警日志包含了下面一些内容的信息。像一些ORA错误,对于监控数据库有极其重要的作用。
    1.所有的内部错误(ORA-600)信息,块损坏错误(ORA-1578)信息,以及死锁错误(ORA-60)信息等。
    2.管理操作,例如CREATE、ALTER、DROP语句等,以及数据库启动、关闭以及日志归档的一些信息。
    1)涉及物理结构的所有操作:例如创建、删除、重命名数据文件与联机重做日志文件的ALTER DATABASE命令,此外还涉及重新分配数据文件大小以及将数据文件联机与脱机的操作。
    2) 表空间操作,例如DROP与CREATE命令,此外还包括为了进行用户管理的备份而将表空间置入和取出热备份模式的操作
    3.与共享服务器或调度进程相关功能的消息和错误信息。
    4.物化视图的自动刷新过程中出现的错误。
    5.动态参数的修改信息。

随着时间的推移,告警日志文件会越来越大,因此需要定期清理告警日志

2.2 定期清理告警日志

  • 添加定期清理告警日志的shell作业
[oracle@rac1 ~]$ crontab -l
0 0 * * * sh /u01/app/oracle/diag/rdbms/racdb/racdb1/tracebak/mvlog.sh
  • 添加定时清理告警日志的脚本
[oracle@rac1 ~]$ cat /u01/app/oracle/diag/rdbms/racdb/racdb1/tracebak/mvlog.sh
#!/bin/bash

#get date
datestring=$(date +%Y%m%d --date="-1 day")

#mv alert log  to new station
path=/u01/app/oracle/diag/rdbms/racdb/racdb1/

cp ${path}trace/alert_racdb1.log   ${path}tracebak/alert_racdb1_${datestring}.log 	
# clear the old alert log	
echo  > ${path}trace/alert_racdb1.log 			

3 跟踪文件

跟踪文件包括后台进程跟踪文件和用户进程跟踪文件。
1.后台进程跟踪文件用于记录后台进程的警告或错误信息。磁盘位置由初始化参数background_dump_dest确定,后台进程跟踪文件的命名格式为<sid>_<processname>_<spid>.trc,如
在这里插入图片描述
2.用户进程跟踪文件用于记载与用户进程相关的信息,主要用于跟踪SQL语句。通过用户进程跟踪文件,可以判断SQL语句的执行性能。用户进程跟踪文件的位置由初始化参数user_dump_dest确定,用户进程跟踪文件的命名格式为<sid>_ora_<spid>.trc,如:
在这里插入图片描述

4 core_dump_dest

这个参数是指定核心转储位置的目录名 (主要用于 UNIX)。
主要记录核心dump的目录,如果oracle核心进程因为BUG等原因崩溃,会做内存的dump,dump文件保存在该目录下
Oracle官方文档对core_dump_dest的解释

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值