用于 Oracle 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

定制操作文件格式

定制操作文件是纯文本文件。该文件包含一个或多个定义 Sun Cluster HA for Oracle 服务器 故障监视器定制行为的条目。每个条目可以为一个 DBMS 错误、一个超时错误或多个已记录警报定义定制行为。定制操作文件中最多可定义 1024 个条目。


注 –

定制操作文件中的每个条目都会覆盖某个错误的预设操作,或者为没有预设操作的错误指定操作。请为那些需要覆盖的预设操作或没有预设操作的错误在定制操作文件中创建条目。请不要为不需要更改的操作创建条目。


定制操作文件中的条目由一连串用分号分隔的关键字-值对组成。每个条目都包含在括号当中。

定制操作文件中的条目格式如下所示:

{
[ERROR_TYPE=DBMS_ERROR|SCAN_LOG|TIMEOUT_ERROR;]
ERROR=error-spec; 
[ACTION=SWITCH|RESTART|STOP|NONE;]
[CONNECTION_STATE=co|di|on|*;]
[NEW_STATE=co|di|on|*;]
[MESSAGE="message-string"]
}

单独的关键字-值对之间和条目之间可能会使用空格以便格式化文件。

定制操作文件中关键字的含义和允许值如下:

ERROR_TYPE

表示服务器故障监视器已检测到的错误类型。该关键字允许使用以下值:

DBMS_ERROR

指定该错误为 DBMS 错误。

SCAN_LOG

指定该错误为警报日志文件中记录的警报。

TIMEOUT_ERROR

指定该错误为超时。

ERROR_TYPE 关键字可选。如果忽略该关键字,错误将假定为 DBMS 错误。

ERROR

用于标识错误。error-spec 的数据类型和含义由 ERROR_TYPE 关键字的值确定,如下表所示。

ERROR_TYPE

数据类型 

含义 

DBMS_ERROR

整数 

由 Oracle 生成的 DBMS 错误的错误编号。 

SCAN_LOG

引用的正则表达式 

Oracle 已记录到 Oracle 警报日志文件的错误信息中的字符串。 

TIMEOUT_ERROR

整数 

从服务器故障监视器上次启动或重新启动时起,产生连续超时探测的次数 

您必须指定 ERROR 关键字。如果忽略该关键字,则定制操作文件中的对应条目将被忽略。

ACTION

指定服务器故障监视器为响应错误而执行的操作。该关键字允许使用以下值:

NONE

指定服务器故障监视器忽略该错误。

STOP

指定停止服务器故障监视器。

RESTART

指定服务器故障监视器停止并重新启动由 SUNW.oracle_server 资源的 Restart_type 扩展属性值所指定的实体。

SWITCH

指定服务器故障监视器将数据库资源组切换到另一个节点或区域。

ACTION 关键字可选。如果忽略该关键字,则服务器故障监视器将忽略该错误。

CONNECTION_STATE

指定当检测到错误时数据库和服务器故障监视器之间必要的连接状态。指定仅当检测到错误时连接需要处于必要状态时才会应用该条目。该关键字允许使用以下值:

*

指定无论连接状态如何都始终应用该条目。

co

指定仅当服务器故障监视器正尝试连接到数据库时才会应用该条目。

on

指定仅当服务器故障监视器联机时才会应用该条目。如果服务器故障监视器连接到数据库则为联机。

di

指定仅当服务器故障监视器与数据库断开连接时才会应用该条目。

CONNECTION_STATE 关键字可选。如果忽略该关键字,则无论连接状态如何都会始终应用该条目。

NEW_STATE

指定服务器故障监视器检测到错误后必须保留的数据库与服务器故障监视器之间的连接状态。该关键字允许使用以下值:

*

指定连接必须保留不更改的状态。

co

指定服务器故障监视器必须断开与数据库的连接并立即重新连接到数据库。

di

指定服务器故障监视器必须断开与数据库的连接。当下次探测数据库时,服务器故障监视器将重新连接。

NEW_STATE 关键字可选。如果忽略该关键字,则检测到错误后数据库连接状态保留不更改。

MESSAGE

指定当检测到错误时需要打印到资源日志文件的附加消息。该消息必须包含在双引号内。该消息是为错误定义的标准消息的补充。

MESSAGE 关键字可选。如果忽略该关键字,则检测到错误时不会将附加消息打印到资源的日志文件。