oracle-12154 dblink,Dblink的使用和报错解决方法--oracle学习笔记
一.定义介绍这个你要明白dblink是怎么使用的.dblink是你用对方数据库的某个用户登录,然后使用这个用户访问表.比如自己数据库是A,现用用户scott,对方数据库B,下有用户jane和john.你需要访问john用户的emp表.但是对方给了你jane的用户名和密码 ,你只能建立一个到对方jane用户的dblink.这时候你怎么访问john用户的emp表呢.这时候需要B数据库管理员把john.
一.定义介绍
这个你要明白dblink是怎么使用的.
dblink是你用对方数据库的某个用户登录,然后使用这个用户访问表.
比如自己数据库是A,现用用户scott,对方数据库B,下有用户jane和john.
你需要访问john用户的emp表.但是对方给了你jane的用户名和密码 ,你只能建立一个到对方jane用户的dblink.这时候你怎么访问john用户的emp表呢.这时候需要B数据库管理员把john.emp的select权限赋予jane用户,那你就可以通过dblink访问了.
反过来你的问题应该也明白怎么办了吧.
如果对方要访问你的表,那么他必须知道你所在数据库的一个用户和密码,如果就是你的表所属的用户,那么不用授权,如果是另一个用户c,那么你只需要把权限赋予用户c就可以了。
二.报错解决方法
以下是一点儿经验:
A : 你要连接的机器
B: 创建db link的机器
1, using后面的串必须是B的连接串;因为你是要在B上,创建A的db link的;--开发者比较容易犯这个错,因为总会连接很多的其他开发者的机器
2, 密码用""引起来,这个原因很奇怪,没有见过; --ora-01017,ora-02063, 用户名和密码错误;
3, A和B的机器的GLOBAL_NAMES需要一样,数据库的默认设置;--ora-12154,这个错误网上的解答就比较多了;
但是现在是A和B的不一样,所以我把A和B上执行了: ALTER SYSTEM SET GLOBAL_NAMES=FALSE;
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)