IBM® Informix® 12.10

连接管理器配置文件的格式和示例

要设置连接管理器,您必须创建连接管理器配置文件。

大多数连接管理器选项是在配置文件中指定的。配置文件由两部分组成:
  • 头,其中包含连接管理器配置选项,用于指定实例名称和其他可选参数。
  • 主体,其中包含一个或多个连接单元部分,用于定义连接单元的类型和名称、服务级别协议、故障转移配置和故障转移警报程序。
以下代码块显示了连接管理器配置文件的格式:
# *** HEADER ***
NAME connection_manager_instance_name

# Optional Parameters
MACRO name_1=server_list_1
MACRO name_2=server_list_2
MACRO name_n=server_list_n
.
.
.
LOCAL_IP ip_list
LOG value
LOGFILE path_and_filename
DEBUG value
CM_TIMEOUT seconds
EVENT_TIMEOUT seconds
SECONDARY_EVENT_TIMEOUT seconds
SQLHOSTS value

# *** BODY ***
# Connection Unit 1
unit_type unit_name_1
{
   INFORMIXSERVER server_list
   SLA sla_name_1 DBSERVERS=value \
   \
                \ #Optional SLA Attributes
                  MODE=value \
                  USEALIASES=value \
                  POLICY=value \
                  WORKERS=number_of_threads \
                  HOST=host_name \
                  NETTYPE=network_protocol \
                  SERVICE=service_name \
                  SQLHOSTSOPT=options
   SLA sla_name_2 DBSERVERS=value ...
   SLA sla_name_n DBSERVERS=value ...
.
.
.
   #Optional Failover Parameter and Attributes
   FOC ORDER=value \
       PRIORITY=value \
       TIMEOUT=seconds \
       RETRY=attempts

   #Optional Failover Alarm Parameter
   CMALARMPROGRAM path_and_filename
}

# Connection Unit 2
unit_type unit_name_2
{
   INFORMIXSERVER server_list
   SLA sla_name_1 DBSERVERS=value ...
   SLA sla_name_2 DBSERVERS=value ...
   SLA sla_name_n DBSERVERS=value ...
   FOC ORDER=value ...
   CMALARMPROGRAM path_and_filename
}
.
.
.
# Connection Unit n
unit_type unit_name_n
{
   INFORMIXSERVER server_list
   SLA sla_name_1 DBSERVERS=value ...
   SLA sla_name_2 DBSERVERS=value ...
   SLA sla_name_n DBSERVERS=value ...
   FOC ORDER=value ...
   CMALARMPROGRAM path_and_filename
}
提示: 为了提高可读性,请使用反斜杠 (\) 行接续字符来断开较长的配置文件行。以下示例显示了分成四行的宏定义:
MACRO srvlist=node1,node2,node3,node4, \
              node5,node6,node7,node8, \
              node9,node10,node11,node12, \
              node13,node14,node15

连接管理器配置文件参数

下表列出了可以在连接管理器配置文件的不同部分中使用的参数。有关每个参数的更多信息,请访问表中该参数的链接。
表 1. 连接管理器配置文件参数
配置文件的组成部分 必需参数 可选参数
头配置文件参数
用于高可用性集群的主体
用于网格、复制集或服务器集的主体

示例 1:用于高可用性集群的基本配置文件

NAME      cm1
LOG       1
LOGFILE   ${INFORMIXDIR}/tmp/cm1.log

CLUSTER west
{
   INFORMIXSERVER  ids_w1,ids_w2
   SLA  oltp    DBSERVERS=primary
   SLA report DBSERVERS=HDR,SDS
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=2
   CMALARMPROGRAM ${INFORMIXDIR}/etc/CMALARMPROGRAM.sh
}

此示例针对高可用性集群配置了连接管理器,并定义了两个 SLA。

配置文件头定义了以下内容:
  • cm1 定义为连接管理器实例的名称
  • 已启用日志记录
  • cm1.log 定义为日志文件的名称
  • $INFORMIXDIR/tmp 定义为日志目录
配置文件主体定义了两个 SLA、故障转移参数以及故障转移处理失败时要调用的程序:
  • CONNECT TO @oltp 连接请求将定向到主服务器
  • CONNECT TO @report 连接请求将定向到 HDR 辅助服务器。如果 HDR 辅助服务器不可用,CONNECT TO @report 连接请求将定向到任何可用的 SD 辅助服务器。
  • 主服务器的 HA_FOC_ORDER 配置参数值在故障转移规则中使用。
  • 连接管理器再等待 5 秒,以等待有关连接单元的主服务器故障转移处理开始的事件。
  • 连接管理器在主服务器的 HA_FOC_ORDER 配置参数指定的列表中循环 2 次后,自动故障转移将终止并生成警报。
  • 如果故障转移处理遇到错误,将调用 $INFORMIXDIR/etc/CMALARMPROGRAM.sh
某些参数和属性不包含在此配置文件中,因此连接管理器具有以下缺省行为:
  • 未设置 DEBUG 参数,因此将禁用调试。
  • 未设置 EVENT_TIMEOUT 参数,因此连接管理器将等待主服务器事件 60 秒,然后再开始故障转移处理。
  • 未设置 SECONDARY_EVENT_TIMEOUT 参数,因此连接管理器将等待辅助服务器事件 60 秒,然后再与辅助服务器断开连接。
  • 未设置 CM_TIMEOUT 参数,因此在下一个可用连接管理器成为故障转移仲裁器之前,数据库服务器将等待 60 秒以从故障转移仲裁器连接管理器接收事件。
  • 未设置 SQLHOSTS 参数,因此连接管理器将依次检查本地 sqlhosts 文件和远程 sqlhosts 文件以查找 ids_w1ids_w2 的实例。
  • 未设置 SLA 参数的 MODE 属性,因此连接管理器会将连接请求重定向到 oltpreport,而不是充当代理服务器。
  • 未设置 report SLA 的 POLICY 属性,因此连接管理器会将连接请求定向到工作负载最低的辅助服务器。
  • 未设置 SLA 参数的 WORKERS 属性,因此将为每个 SLA 分配四个工作程序线程。
  • 未设置 SLA 参数的 HOST、NETTYPE、SERVICE 和 SQLHOSTSOPT 属性,因此连接管理器将使用 ids_w1ids_w2sqlhosts 值。

示例 2:用于多个连接单元类型的复杂配置文件

NAME cm2
MACRO NY=(ny1,ny2,ny3)
MACRO CA=(ca1,ca2,ca3)
LOG       1
LOGFILE ${INFORMIXDIR}/tmp/cm2.log

CLUSTER west
{
   INFORMIXSERVER ids_w1,ids_w2
   SLA oltpw DBSERVERS=primary
   SLA reportw DBSERVERS=(HDR,SDS)
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=1
   CMALARMPROGRAM /etc/CMALARMPROGRAM.sh
}

CLUSTER east
{
   INFORMIXSERVER ids_e1,ids_e2
   SLA oltpe DBSERVERS=primary
   SLA reporte DBSERVERS=RSS,HDR
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=1
   CMALARMPROGRAM ${INFORMIXDIR}/etc/CMALARMPROGRAM.sh
}

REPLSET erset
{
   INFORMIXSERVER g_er1,g_er2
   SLA repl1_any  DBSERVERS=ANY
   SLA repl1_ca DBSERVERS=${CA} \
                POLICY=WORKLOAD
   SLA repl1_ny DBSERVERS=${NY}
}

GRID grid1
{
   INFORMIXSERVER node1,node2,node3
   SLA grid1_any DBSERVERS=ANY \
                 POLICY=LATENCY
   SLA grid1_avail DBSERVERS=${NY},${CA}
}

GRID grid2
{
   INFORMIXSERVER node4,node5
   SLA grid2_any DBSERVERS=ANY \
                 POLICY=LATENCY
   SLA grid2_avail DBSERVERS=${CA},${NY}
}

SERVERSET ss
{
   INFORMIXSERVER ids1,ids2,ids3
   SLA ssavail DBSERVERS=ids1,ids2,ids3 \
               HOST=apollo \
               SERVICE=9600 \
               NETTYPE=onsoctcp
   SLA ssany DBSERVERS=(ids1,ids2,ids3) \
             HOST=apollo \
             SERVICE=9610 \
             NETTYPE=onsoctcp
}

此示例将连接管理器配置为支持两个高可用性集群、一个复制集、两个网格和一个服务器集。

配置文件头定义了以下内容:
  • cm2 定义为连接管理器实例的名称
  • 定义了两个宏
    • NY,由 ny1ny2ny3 组成
    • CA,由 ca1ca2ca3 组成
  • 已启用日志记录
  • cm2.log 定义为日志文件的名称
  • $INFORMIXDIR/tmp 定义为日志目录

配置文件主体定义了用于六个连接单元的服务级别协议和故障转移处理选项。配置文件头中定义的宏在某些 SLA 中使用。

某些参数和属性不包含在此配置文件中,因此连接管理器具有以下缺省行为:
  • 未设置 DEBUG 参数,因此将禁用调试。
  • 未设置 EVENT_TIMEOUT 参数,因此连接管理器将等待主服务器事件 60 秒,然后再开始故障转移处理。
  • 未设置 SECONDARY_EVENT_TIMEOUT 参数,因此连接管理器将等待辅助服务器事件 60 秒,然后再与辅助服务器断开连接。
  • 未设置 CM_TIMEOUT 参数,因此在下一个可用连接管理器成为故障转移仲裁器之前,数据库服务器将等待 60 秒以从故障转移仲裁器连接管理器接收事件。
  • 未设置 SQLHOSTS 参数,因此连接管理器将依次检查本地 sqlhosts 文件和远程 sqlhosts 文件以查找数据库服务器实例。


发送反馈 | 示例交流 | 故障诊断

要查找 PDF,请参阅 IBM Informix 12.10 系列产品的出版物
有关发行说明、文档说明和/或机器说明,请参阅发行说明页。
时间戳记 发行日期:2013 年 3 月