首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle11g中创建dblink如何名字变了且不可用

2013-01-06 
oracle11g中创建dblink怎么名字变了且不可用?Create publicdatabase link mydblink1 Connect to myuser id

oracle11g中创建dblink怎么名字变了且不可用?
Create public  database link mydblink1 Connect to myuser identified by myuserpassword using 'mylinkdb';   
已配置好网络服务名mylinkdb确保可用的

结束创建后,本来名字是mydblink1,
却变成了mydblink1.fc.rtfgj.net
然后查询时
select * from myuser.mytbl@mydblink1
select * from myuser.mytbl@mydblink1.fc.rtfgj.net
都提示ora-12154无法解析指定的连接标识符,为什么呢?
急,急! 请大家帮忙!


[解决办法]
数据链名字好像根据操作系统类型自动添加成新名字。
[解决办法]
select * from myuser.mytbl@mydblink1
改成如下:
select * from mytbl@mydblink1
 或者
select * from mydblink1.mytbl
。。。。。
[解决办法]
本来名字是mydblink1,却变成了mydblink1.fc.rtfgj.net

--名字会自动加后缀,哪个都能用

但是'mylinkdb'是确保可用的

--你认为的确保可用不是数据库认为的确保可用
[解决办法]

SQL> show parameter global_names

NAME     TYPE VALUE
------------------------------------ ----------- 
global_names     boolean FALSE

global_names参数并不是用来控制global_name的,而是用来限制dblink的使用.global_names参数的作用,简单得说来就是:当global_names参数设置为TRUE时,使用dblink的名称必须与被连接库的GLOBAL_NAME一致
所以,你检查一下这个参数试试

热点排行