以下的文章主要介绍的是布式Oracle database link的实际操作步骤以及在实际操作中我么应注意什么事项描述,如果你对其相关的实际操作有兴趣的话,你就可以对以下的文章点击观看了。
访问方式:
- select * from MyTableSpace.MyTable@MyDB
1.创建私有连接
- create database link fmydb connect to lpuser identified by lpuser1 using 'lp10.119.40.7'
- drop database link fmydb [注意此处不能有public]
2.创建公共连接
- create public database link fmydb connect to sys identified by sys using 'lp10.119.40.7'
- drop public database link fmydb [注意此处必须有public]
前面有public 与没有public 的区别是:有public 则此机上的所有oracle用户都可以查询远程库,如无public则此机上只有创建此连接的用户有权查询远程库。
如创建全局dblink,则必须使用systm或sys用户。
一、两种创建方式
***种:
1.根据远端的信息用Net Manager设置好能连接远端的服务及监听程序。
2.
- create public database link fwq12
- connect to fzept identified by neu
using 'fjept' //fjept为刚刚配置好的服务名
第二种:
直接建立链接:
- create database link linkfwq
- connect to fzept identified by neu
- using '(DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.202.12)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVICE_NAME = fjept)
- )
- )';
CREATE SYNONYM 同义词名 FOR 表名;
CREATE SYNONYM 同义词名 FOR 表名@数据库链接名;
删除dblink:DROP PUBLIC DATABASE LINK linkfwq。
假如创建全局dblink,则必须使用systm或sys用户,在database前加public
- SQL>create synonym bjscottemp for emp@beijing;
于是就可以用bjscottemp来替代带@符号的分布式链接操作emp@beijing。
ORA-02019:未找到远程数据库的连接说明
1.>>> 建立 DATABASE LINK
- CREATE PUBLIC DATABASE LINK ABC
- CONNECT TO SA IDENTIFIED BY PASSWORD
- USING '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.0.100)
(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = AAA)))';
2.>>> 测试
- select * from test@ABC
3.>>>请注意使用 DBLINK 时,INIT.ORA中 GLOBAL_NAME 的设置,
如果为 ture , 请使用DBLINK的全称,可在 all_db_links 中查到,如果为 FALSE, 不必使用全称,当出现
“ORA-02019:为找到远程数据库的连接说明”时,请使用全称,如:
- select * from test@ABC.US.ORACLE.COM
4.
- SQL> select * from global_name;
- GLOBAL_NAME
- LOCALSR
5.>>>> update global_name set GLOBAL_NAME = 'LOCALSR.US.ORACLE.COM' where GLOBAL_NAME = 'LOCALSR'
6.>>>重启例程>>ok
- SQL> desc global_name;
- Name Type Nullable Default Comments
- GLOBAL_NAME VARCHAR2(4000) Y global database name
上述的相关内容就是对Oracle database link的描述,希望会给你带来一些帮助在此方面。
【编辑推荐】