oracle-12154 dblink,DBLINK建立后的ora-12154 无法解析指定的连接描述符错误

错误描述:

服务器A & B:WINDOWS2003 server + Oracle 10g

需要在服务器A上建立DBLINK,连接上服务器B上的数据库。

执行步骤:

1、在A中的tnsname中建立服务器B上的数据库的连接描述符

2、在A中以sys身份建立DBLINK

连接测试:

conn   as

select * from

提示错误:ora-12154 无法解析指定的连接描述符

原因分析:

1、检查tnsname.ora文件,确认连接符和服务器名、Oracle服务名无误

2、检查global name,确认无误

3、A服务器用SQL PLUS连接B数据库,成功

4、在B服务器上建立A的DBLINK,成功

从上面的结果可以看出,一定是A服务器的Oracle设置有问题,而且从提示上看,只能是Tnsname的问题。A和B服务器唯一不同的就是,B只装了数据库,而A同时装了数据库和客户端。

经过小栋的提醒,突然想起来,A应该有两个tnsname,而我只改了client端的。

解决方法:

%ORACLE_HOME%/tnsname改完之后,成功查出结果。

借此机会感谢小栋!

tips: 如果连接的是UNIX服务器上的数据库,tnsname中的host只能填写IP地址。

发现,即使是SELECT 一个DBLINK,也会有COMMIT按钮,说明有可能锁住远程表。查找相关资料,大致意思是属于分布式查询,以事务形式提交,因此在查询完后尽量使用COMMIT或ROLLBACK来释放锁。切记

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值