数据库所在服务器上安装了3块网卡,配置的IP分别是192.168.1.110、192.168.1.111、192.168.1.112.
在客户端上配置tnsnames.ora时,其中主机设置如下:
ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.111)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.112)(PORT = 1521))
测试时,我只连一根网线,从客户端访问服务器,
当连通192.168.1.110时,连接时间很短,几乎可以忽略;
但是当连通192.168.1.111时,连接时间在25s左右,这个时间会对应用产生较大影响;
当连通192.168.1.112时,连接时间更长。
现在的问题是,我不了解ADDRESS_LIST设置多主机地址的链接原理,从结果分析,应该是先连接第一个主机字符串,连接不通时在尝试连接第二个,以此类推。
我想请教一下,能不能在配置文件中设置一下连接时间的上限,比如,我把时间设为5s,如果连接第一个主机字符串的时间超过5s,我就去尝试连接第二个主机字符串。这样的话可以保证我能在15s之内访问数据库。
请路过的高手不吝指点。
在客户端上配置tnsnames.ora时,其中主机设置如下:
ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.111)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.112)(PORT = 1521))
测试时,我只连一根网线,从客户端访问服务器,
当连通192.168.1.110时,连接时间很短,几乎可以忽略;
但是当连通192.168.1.111时,连接时间在25s左右,这个时间会对应用产生较大影响;
当连通192.168.1.112时,连接时间更长。
现在的问题是,我不了解ADDRESS_LIST设置多主机地址的链接原理,从结果分析,应该是先连接第一个主机字符串,连接不通时在尝试连接第二个,以此类推。
我想请教一下,能不能在配置文件中设置一下连接时间的上限,比如,我把时间设为5s,如果连接第一个主机字符串的时间超过5s,我就去尝试连接第二个主机字符串。这样的话可以保证我能在15s之内访问数据库。
请路过的高手不吝指点。
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.3.19)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.3.20)(PORT = 1521))
(LOAD_BALANCE = yes)
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = rac)
)
)由于你的配置没有设置(LOAD_BALANCE = yes),所以没有负载均衡,这时ORACLE是按你列出的IP一个一个的去尝试连接的
#
#names.initial_retry_timeout = 30
#
#Syntax: 1-600 seconds
#Default: 15 (OSD)
#
# Determines how long a client will wait for a response from a Names Server
# before reiterating the request to the next server in the preferred_servers
# list.
#
同意 codearts 的观点..
革命尚未成功