Oracle 软件在由 Alert_log_file 扩展特性标识的文件中记录警报。 服务器故障监视器将扫描此文件并执行响应警报(已为其定义了操作)的操作。
预设了操作的日志警报在表 A–2 中列出。 更改对日志警报的响应,以更改预设操作或定义服务器故障监视器响应的新警报。
要更改对日志警报的响应,请在定制操作文件中创建一个项,其中的关键字设置如下:
将 ERROR_TYPE 设置为 SCAN_LOG。
将 ERROR 设置为被引用的正规表达式,该表达式标识 Oracle 已记录到 Oracle 警报日志文件的错误消息中的一个字符串。
将 ACTION 设置为所需的操作。
服务器故障监视器按项的发生顺序处理定制操作文件中的项。 仅处理与日志警报相匹配的第一个项。 以后匹配的项都被忽略。 如果您要使用正规表达式为若干个日志警报指定操作,请确保在多个常规项之前存在多个特定项。 在常规项之后发生的特定项可能被忽略。
例如,定制操作文件可能为由正规表达式 ORA-65 和 ORA-6 标识的错误定义不同的操作。 要确保包含正规表达式 ORA-65 的项不被忽略,请确保在包含正规表达式 ORA-6 的项之前发生此项。
下例显示了定制操作文件中的一个项,用于更改对日志警报的响应。
{ ERROR_TYPE=SCAN_LOG; ERROR="ORA-00600: internal error"; ACTION=RESTART; }
此例显示了定制操作文件中的一个项,用于覆盖有关内部错误的日志警报的预设操作。 此项指定以下行为:
作为对包含文本 ORA-00600: internal error 的日志警报的响应,服务器故障监视器执行的操作为重新启动。
在检测到错误时应用此项,无论数据库和服务器故障监视器之间的连接状态如何。
检测到错误之后,数据库和服务器故障监视器之间的连接状态必须保持不变。
检测到此错误时,资源的日志文件中不显示附加消息。