1 ORACLE 建立DB-LINK
测试条件:
假设有两台服务器,一台远程服务器IP为:192.168.1.248,其中SID:BKSVR 用户名:slarms,密码:oracle
本地服务器IP:192.168.1.29,其中SID:JSJN,用户名:slarms,密码:oracle
现要通过本地数据库JSJN访问远程数据库BKSVR。
测试环境:
远程服务器248为AIX,本地服务器29为WINDOWS,ORACLE版本均为oracle9i
参数设置:
1.查看数据库中的GLOBAL_NAME?
执行SELECT * FROM GLOBAL_NAME;
远程数据库248返回:BKSVR
oracle建立数据库连接本地数据库29返回:JSJN.REGRESS.RDBMS.DEV.US.ORACLE.COM
2.查看GLOBAL_NAME参数?
SQL> show PARAMETER global_name;
NAME                TYPE        VALUE
-------------------------- -----------
global_names      boolean    FALSE
该参数为true时,本地建立的DBLINK的名称必须和远程的GLOBAL_NAME名称一致。
3.查看是否支持高级复制功能?
查看v$option视图,如果Advanced replication为true,则支持高级复制功能,
否则不支持
SELECT * FROM v$option WHERE parameter LIKE'Advanced replication%'; 建立步骤:
1.在本地建立远程数据库248的客户端连接BKSVR_248;
2.在本地建立本地数据库29的客户端连接SLARMS_29;
3.PLSQL用SLARMS_29登录本地数据库,执行建立DB-LINK连接:
CREATE DATABASE LINK BKSVR CONNECT TO slarms IDENTIFIED BY oracle USING 'BKSVR_248'--创建DB-LINK  注意本地服务名必须是单引号
其中BKSVR是远程的数据库248的GLOBAL_NAME,slarms是远程数据库248的用户名,oracle是远程数据库248的密码。BKSVR_248是本地建立的连接的数据库的服务名。
4.测试连接是否成功:
SELECT * FROM dual@bksvr;
DUMMY
--------
X
如果返回结果则表示连接成功。
5.在本地数据库29中查询已经建立远程连接的数据库。
SELECT owner,object_name FROM dba_objects WHERE bject_type='DATABASE LINK';
OWNER  OBJECT_NAME
------------------------------
BKSVR.REGRESS.RDBMS.DEV.US.ORACLE.COM
SLARMS
6.本地已经建立了DBLINK用于连接到远程数据库上,在本地数据29上可以查询得到远程数
据库248的数据。
SELECT * FROM ccy@bksvr;
其中ccy是表名。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。