主题:急:DELPHI用ADO方式连接ORACLE RAC不能实现自动切换
环境:DEPHI 7 ORACLE10G RAC
ORACLE TNSNAMES配置
总连接
ORAHB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.2)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.3)(PORT = 1521))
(LOAD_BALANCE = yes)
)
(CONNECT_DATA =
(SERVICE_NAME = orahb)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 80)
(DELAY = 5)
)
)
)
服务器1连接
ORAHB1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orahb)
(INSTANCE_NAME = orahb1)
)
)
服务器2连接
ORAHB2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.3)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orahb)
(INSTANCE_NAME = orahb2)
)
)
用ADO控件连接总的连接串ORAHB,并确保ADOConnection1连接到服务器1上,连接正常,当手工shutdown服务器1上的数据库时,
ADOConnection1.Connect:=false;
ADOConnection1.Connect:=True; 都正常,但连接ADOConnection1的Query报告数据库连接失败,事实上,ADOConnection1.Connect:=false;ADOConnection1.Connect:=true操作并没有使连接自动切换到服务器2上,但将ADOConnection1重建或将程序关闭再打开时连接正常。请问,如何配置能使数据库1连接失败时自动切换到数据库2上?
ORACLE TNSNAMES配置
总连接
ORAHB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.2)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.3)(PORT = 1521))
(LOAD_BALANCE = yes)
)
(CONNECT_DATA =
(SERVICE_NAME = orahb)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 80)
(DELAY = 5)
)
)
)
服务器1连接
ORAHB1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orahb)
(INSTANCE_NAME = orahb1)
)
)
服务器2连接
ORAHB2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.180.1.3)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orahb)
(INSTANCE_NAME = orahb2)
)
)
用ADO控件连接总的连接串ORAHB,并确保ADOConnection1连接到服务器1上,连接正常,当手工shutdown服务器1上的数据库时,
ADOConnection1.Connect:=false;
ADOConnection1.Connect:=True; 都正常,但连接ADOConnection1的Query报告数据库连接失败,事实上,ADOConnection1.Connect:=false;ADOConnection1.Connect:=true操作并没有使连接自动切换到服务器2上,但将ADOConnection1重建或将程序关闭再打开时连接正常。请问,如何配置能使数据库1连接失败时自动切换到数据库2上?