oracle 9i RAC tnsnames配置问题

[复制链接]
查看11 | 回复9 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
操作系统:2台机子装redhat7.2
数据库:Oracle9.0.2
两台机子装成RAC数据库,instance 名为orcl1和orcl2
要求:当orcl1发生故障时,orcl1上的连接能自动切到orcl2上,反之亦然;
我的代码如下,但不行,报错:解析不了orcl2(我把orcl2 down了,只有orcl1仍在运行),我的目地是:connect yk/yk@orcl2运行正常:

LISTENERS_ORCL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = linuxb)(PORT = 1521))
)
LISTENER_ORCL1 =
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
LISTENER_ORCL2 =
(ADDRESS = (PROTOCOL = TCP)(HOST = linuxb)(PORT = 1521))
ORCL =
(DESCRIPTION =
(FAILOVER = ON)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = linuxb)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(FAILOVER_MODE =
(TYPE = select)
(METHOD= basic)
)
)
)
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = MODOSE)
(PRESENTATION = http://HRService)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
ORCL1 =
(DESCRIPTION =
(FAILOVER=ON)
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = linuxb)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl1)
(FAILOVER_MODE =

(TYPE = select)

(METHOD = basic)
)
)
)
ORCL2 =
(DESCRIPTION =
(FAILOVER=ON)
(ADDRESS = (PROTOCOL = TCP)(HOST = linuxb)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = linux)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl2)
(FAILOVER_MODE =

(TYPE = select)

(METHOD = basic)
)
)
)
哪位大侠帮帮忙,先谢了!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
没有人知道吗?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
no one know it?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
哪位大侠知道的话,帮帮忙吧!急死我了。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
#解析不了orcl2(我把orcl2 down了,只有orcl1仍在运行)
你把它down了当然解析不了了,我想你不是说这个意思吧
我想你可以把spfile里那个remote_listener去掉试试
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
应该可以啊,按照ORACLE RAC 的功能,此情况下,connect yk/yk@orcl2语句应该转到orcl1上继续执行,否则,RAC就没有意义了。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
oh,不好意思,没仔细看,你的习惯和我的不太一样,我习惯把orac1,orcl2之类的配成单独连接的,把orcl配成可以连接到两台服务器的
还是建议你把remote_listener去掉试试
最初由 dragonfish 发布
[B]应该可以啊,按照ORACLE RAC 的功能,此情况下,connect yk/yk@orcl2语句应该转到orcl1上继续执行,否则,RAC就没有意义了。 [/B]

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
还是不行,报错:service_name不能解析。
能把你的tnsnames贴上来看看吗?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
你的orcl1和orcl2里面既然配了两个地址,就不要写INSTANCE_NAME 了,和orcl一样就可以了
现在我用的别人的笔记本,所以没办法给你贴我做过的配置
最初由 dragonfish 发布
[B]还是不行,报错:service_name不能解析。
能把你的tnsnames贴上来看看吗? [/B]

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
问题已解决,把instance_name删掉,再把2个address并到一个address_list中就可以了,多谢notfox兄的关心,能否留个e-mail以后可以多请教。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行