Health Monitor和ADR
Health Monitor是一组检查,会在特定错误条件出现时自动运行,也可以根据DBA的指示以手动方式运行、检查结果不存储在数据库,而存储在文件系统中。其原因在于,一些错误的性质决定了数据库不可再用:因此,需要一个外部知识库来存储Health Monitor的结果。该知识库就是自动诊断知识库(automatic diagnostic repository,ADR),位于diagnostic_dest实例参数指定的目录中。
只能在不同阶段运行不同的Health Monitor检查:
*在nomount模式中,仅运行"DB Structure Integrity"检查,而且它只检查控制文件的完整性
*在mount模式中,"DB Structure Integrity"检查将检查控制文件,联机重做日志文件和数据文件头的完整性。还将运行"Redo Integrity Check",以检查联机和归档日志文件的可访问性及其是否受损。
*在open模式中,可能运行扫描每个数据块是否受损的检查,并检查数据字典和撤销段的完整性。
只有当数据库处于打开状态时,才能使用允许手动运行Health Monitor检查的界面。共有两个界面:调用
DBMS_HM PL/SQL程序包中过程的sql*plus,以及Database Control。
Health Monitor是一组检查,会在特定错误条件出现时自动运行,也可以根据DBA的指示以手动方式运行、检查结果不存储在数据库,而存储在文件系统中。其原因在于,一些错误的性质决定了数据库不可再用:因此,需要一个外部知识库来存储Health Monitor的结果。该知识库就是自动诊断知识库(automatic diagnostic repository,ADR),位于diagnostic_dest实例参数指定的目录中。
只能在不同阶段运行不同的Health Monitor检查:
*在nomount模式中,仅运行"DB Structure Integrity"检查,而且它只检查控制文件的完整性
*在mount模式中,"DB Structure Integrity"检查将检查控制文件,联机重做日志文件和数据文件头的完整性。还将运行"Redo Integrity Check",以检查联机和归档日志文件的可访问性及其是否受损。
*在open模式中,可能运行扫描每个数据块是否受损的检查,并检查数据字典和撤销段的完整性。
只有当数据库处于打开状态时,才能使用允许手动运行Health Monitor检查的界面。共有两个界面:调用
DBMS_HM PL/SQL程序包中过程的sql*plus,以及Database Control。