各位达人,
在服务器端1 red hat enterprise 5.0上安装好了 oracle 11g, 并正常启动运行。
在服务器端2 red hat enterprise 5.0上安装好了 oracle 11g, 并正常启动运行。
在客户端 windows xp 上安装好了 oracle 客户端,并且配置好了 tnsnames.ora.
tnsnames.ora如下
------------------
# Generated by Oracle configuration tools.
ORCL1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =191.168.1.124)(PORT = 1521))
)
(CONNECT_DATA =
#(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)
ORCL2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =191.168.1.102)(PORT = 1521))
)
(CONNECT_DATA =
#(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)
-----------------
在客户端已经可以用 sqlplus 成功登录服务器端1 oracle 和 服务器端2 oracle.
现在在客户端登录服务器端1 oracle,然后建立到 服务器端2 oracle 的 database link.
create public database link MYDBLINK1
connect to orange identified by orange
using 'ORCL1';
查询
Select *
From dba_objects@MYDBLINK1
报错 ORA-12541: TNS: no listener
请问达人,这个问题怎么解决?
万分感谢!
------解决方案--------------------
- SQL code
create public database link MYDBLINK1 connect to orange identified by orange using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =191.168.1.102)(PORT = 1521)) ) (CONNECT_DATA = #(SERVER = DEDICATED) (SERVICE_NAME = orcl.localdomain) ) )';
------解决方案--------------------
大致的看了一下 配置文件没有问题的情况下,应该是在你的liunx下的服务关闭了所以连接不上,或者你也可以tnsping一下你的服务器看能否ping通
------解决方案--------------------
create public database link MYDBLINK1
connect to orange identified by orange
using 'ORCL1';
这个方法不对,你要用A去link B,必须A能够识别ORCL1且指向B,你的ORCL1是在客户端上的,只有你的客户端和A在一台机器上才好使
具体办法用1楼的,把他里面#注释掉那行整个去掉 再不行就把这个字符串里面的空格回车什么空白字符删掉重新敲
create public database link MYDBLINK1
connect to orange identified by orange
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =191.168.1.102)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl.localdomain)
)
)';
------解决方案--------------------
http://hi.baidu.com/fendy520/blog/item/2c538a2fc53069311f30890a.html,
可以看一下关于“ ORA-12541: TNS: no listener”的解答。