[转]Oracle DB 查看预警日志

“Database(数据库)”主页>“Related Links相关链接)”区域> “Alert Log Content
(预警日志内容)”

  • 查看预警日志

每个数据库都有一个alert_<sid
>.log文件。此文件位于数据库所在的服务器中,如果设置了$ORACLE_BASE,则此文件默认存储在$ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace中。

数据库预警文件是按时间顺序列出消息的日志文件,例如:

? 启动时使用的任何非默认初始化参数

? 已发生的所有内部错误( ORA-600) 、块损坏错误( ORA-1578 )  和死锁错误( ORA-60 )

? 管理操作,如SQL 语句CREATE 、ALTER、DROP DATABASE 和TABLESPACE,以及Enterprise
Manager 或SQL*Plus 语句STARTUP、SHUTDOWN 、ARCHIVE
LOG和RECOVER

? 与共享服务器和分派程序进程的功能相关的多个消息和错误

? 自动刷新实体化视图时发生的错误

Oracle DB
使用预警日志来保留这些事件的记录,以此作为在操作员控制台上显示这些信息的替代方法。(许多系统会同时在控制台中显示这些信息。)如果某个管理操作成功完成,系统会将“completed(已完成)”消息和一个时间戳写入预警日志中。

Enterprise Manager
可监视预警日志文件,并向你通知严重的错误。你还可以查看日志,以检查不严重的错误和参考性消息。由于预警文件会增长到无法管理的大小,因此可以定期备份该文件,并删除当前的预警文件。当数据库尝试再次写入预警文件时,会重新创建一个新预警文件。

注:$ORACLE_BASE/diag/rdbms/<db_name>/<SID>/alert
目录中有一个XML 版本的预警日志。

要通过SQL*Plus  确定预警日志的位置,请执行以下操作:

? 使用SQL*Plus(或其它查询工具,如 SQL Developer)连接到数据库。

? 查询V$DIAG_INFO 视图。

要查看不带XML 标记的纯文本预警日志,请执行以下操作:

? 在V$DIAG_INFO 查询结果中,记下对应于Diag Trace
 条目的路径。将目录更改至该路径。

? 使用文本编辑器打开alert_SID.log 文件。

要查看XML 格式的预警日志,请执行以下操作:

? 在V$DIAG_INFO 查询结果中,记下对应于Diag Alert 条目的路径。将目录更改至该路径。

? 使用文本编辑器打开log.xml文件。

[email protected]> select * from v$diag_info;

INST_ID NAME              
       VALUE

---------- -------------------------
-------------------------------------------------------

1 Diag Enabled      
       TRUE

1 ADR Base        
         /u01/app/oracle

1 ADR Home        
       
 /u01/app/oracle/diag/rdbms/test0924/test0924

1 Diag Trace        
     
 /u01/app/oracle/diag/rdbms/test0924/test0924/trace

1 Diag Alert        
     
 /u01/app/oracle/diag/rdbms/test0924/test0924/alert

1 Diag Incident      
      /u01/app/oracle/diag/rdbms/test0924/test0924/incident

1 Diag Cdump        
     
 /u01/app/oracle/diag/rdbms/test0924/test0924/cdump

1 Health Monitor      
     /u01/app/oracle/diag/rdbms/test0924/test0924/hm

1 Default Trace File      
 /u01/app/oracle/diag/rdbms/test0924/test0924/trace/test0924_ora_24429.trc

1 Active Problem Count    
 0

1 Active Incident Count    
0

11 rows selected.

  • 使用跟踪文件

? 每个服务器和后台进程都会向关联的跟踪文件写入信息。

? 错误信息写入相应的跟踪文件中。

? 自动诊断资料档案库(ADR) 。

– 包含整个系统的跟踪和事件记录信息的中央资料档案库

– 存储数据库诊断数据,例如:

— 跟踪

— 预警日志

— 健康状况监视器报告

每个服务器和后台进程都会向关联的跟踪文件写入信息。进程检测到内部错误时,会将有关错误的信息转储到进程的跟踪文件。如果发生了内部错误并且在跟踪文件中写入了信息,则管理员应与Oracle
 支持服务部门联系。

与后台进程关联的跟踪文件的所有文件名均包含生成该跟踪文件的进程的名称。唯一的例外是由作业队列进程( Jnnn)
 生成的跟踪文件。

跟踪文件中的附加信息可以提供用于优化应用程序或实例的指导信息。后台进程总会在适当的时候将该信息写入跟踪文件中。

从Oracle Database 11 g
起,引入了一个高级错误诊断基础结构,用于避免、检测、诊断和解决问题。特别是此功能所针对的问题包含严重错误,例如由数据库代码Bug、元数据损坏和客户数据损坏导致的严重错误。

发生严重错误时,会为其分配一个意外事件编号;系统将立即捕获该错误的诊断数据(如跟踪文件),并使用该编号标记此数据。该数据随后存储在自动诊断资料档案库(ADR,数据库之外的基于文件的资料档案库)中,以后可以通过意外事件编号在其中检索和分析该数据。

ADR
是包含整个系统的跟踪和事件记录信息的中央资料档案库,用于提供数据库诊断数据(如跟踪、预警日志、健康状况监视器报告等)。

ADR 根目录又称为ADR 基目录,其位置由DIAGNOSTIC_DEST初始化参数设置。

如果省略该参数或将其留空,则数据库在启动时按如下所示设置DIAGNOSTIC_DEST:

? 如果设置了ORACLE_BASE 环境变量,则会将DIAGNOSTIC_DEST设置为由ORACLE_BASE
指定的目录。

? 如果未设置ORACLE_BASE 环境变量,则将DIAGNOSTIC_DEST设置为$ORACLE_HOME/log

ADR 主目录的位置由以下路径给定,该路径以ADR
基目录开头:./diag/product_type/db_id/instance_id

来源:http://blog.csdn.net/rlhua/article/details/12709243

[转]Oracle DB 查看预警日志,布布扣,bubuko.com

时间: 2024-08-04 18:31:51

[转]Oracle DB 查看预警日志的相关文章

Oracle DB 查看预警日志

"Database(数据库)"主页>"Related Links相关链接)"区域> "Alert Log Content (预警日志内容)" 查看预警日志每个数据库都有一个alert_<sid>.log文件.此文件位于数据库所在的服务器中,如果设置了$ORACLE_BASE,则此文件默认存储在$ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace中.数据库预警文件

[转]Oracle DB存储体系结构

数据库存储体系结构 构成Oracle DB 的文件可划分为以下类别: ? 控制文件:包含与数据库本身相关的数据,即物理数据库结构信息.这些文件对数据库至关重要.没有这些文件,就无法打开数据文件以访问数据库中的数据. ? 数据文件:包含数据库的用户或应用程序数据,以及元数据和数据字典 ? 联机重做日志文件:用于进行数据库的实例恢复.如果数据库服务器发生崩溃,但未丢失任何数据文件,那么实例便可使用这些文件中的信息恢复数据库. 下列附加文件对成功运行数据库非常重要: ? 参数文件:用于定义实例启动时的

【翻译自mos文章】oracle db 中的用户账户被锁--查看oracle用户的尝试次数

参考原文: Users Accounts Getting Locked. (Doc ID 791037.1) 其实这个文章是为oracle 别的软件产品写的,不过涉及到user 锁定问题,那还是跟db有关系. 该文章我就不全部翻译了,只翻译最有用的一点: ---lcount列是记录oracle用户用错误的密码登陆db的登陆的次数. Select lcount from SYS.USER$ where name ='<USERNAME>' [翻译自mos文章]oracle db 中的用户账户被锁

Oracle怎样方便地查看报警日志错误

由于报警日志文件很大,而每天都应该查看报警日志(查看有无“ORA-”,Error”,“Failed”等出错信息),故想找到一种比较便捷的方法,查看当天报警日志都有哪些错误. 在网上查了几天的资料,尝试综合清除告警日志内容及建外部表的方式来解决这一问题. 一:备份并清除告警日志内容 将每天的告警日志备份好,然后进行清除. 1:备份报警日志 在$ORACLE_HOME/SID/bdump/   目录下, 按日期备份alert_ORACLE_你的实例名.LOG这个文件,如:alert_ORACLE_o

[转]Oracle DB 管理ASM实例

? 描述使用ASM 的好处 ? 管理ASM 实例 ? 创建和删除ASM 磁盘组 ? 扩展ASM 磁盘组 ? 通过使用各种实用程序检索ASM 元数据 Automatic Storage Management Automatic Storage Management (ASM) 将文件系统与卷管理器纵向集成在一起,这是一项专门为Oracle DB 文件建立的技术.使用ASM 可管理单个对称多处理(SMP) 计算机,或通过管理集群的多个节点来支持Oracle Real Application Clus

[转]Oracle DB 使用RMAN执行恢复

? 在丢失关键或非关键数据文件后执行完全恢复 ? 使用增量更新的备份进行恢复 ? 切换到映像副本进行快速恢复 ? 将数据库还原到新主机上 ? 使用备份控制文件进行恢复 使用RMAN RESTORE和RECOVER命令 ? RESTORE命令:从备份中还原数据库文件 ? RECOVER命令:通过应用增量备份和重做日志文件中记录的更改来恢复已还原文件 RMAN> SQL 'ALTER TABLESPACE inv_tbs OFFLINE IMMEDIATE'; RMAN> RESTORE TABL

[转]Oracle DB审计

? 说明DBA 负责的安全和审计工作 ? 启用标准数据库审计 ? 指定审计选项 ? 复查审计信息 ? 维护审计线索 责任分离 ? 具有DBA 权限的用户必须是可信任的. – 滥用信任 – 用审计线索保护受信任位置 ? 必须共同分担DBA 责任. ? 绝对不要共享帐户. ? DBA 和系统管理员必须由不同的人员担任. ? 分离操作员与DBA 的责任. 以下是满足责任分离的主要要求. DBA 必须是可信任的:很难限制某个DBA 去做什么.为了完成工作,DBA 需要很高的权限.DBA 是受信任的职位,

[转]Oracle DB进程体系结构

1.进程体系结构 Oracle DB 系统中的进程主要分为两组: ? 运行应用程序或Oracle 工具代码的用户进程 ? 运行Oracle DB 服务器代码的Oracle DB 进程(包括服务器进程和后台进程) 当用户运行应用程序或Oracle 工具(例如SQL*Plus)时,Oracle DB 会创建一个"用户进程"以运行该用户的应用程序. Oracle DB 还会创建一个"服务器进程"以执行该用户进程发出的命令,可以连接到oracle实例,它在用户建立会话时启动

[转]Oracle DB 管理数据库存储结构

? 描述块中表行数据的存储 ? 创建和管理表空间 ? 获取表空间信息 表数据的存储方式 创建表时,还会创建一个用于保存其数据的段.表空间包含一个段集合. 从逻辑上来说,表包含许多行列值.行最终以行片段的形式存储在数据库块中.之所以称其为行片段,是因为在某些情况下可能不会在一个位置存储完整的行.当插入的行太大而无法装入单个块时(链接行),或当更新导致现有行超出当前块的可用空闲空间时(迁移行),就会发生这种情况.当表中的列多于255 列时,也会使用行片段.在这种情况下,这些行片段可能位于同一个块(块