一步一步建立DBLINK的详细步骤记
注:
测试环境: 操作系统一台linux 192.168.0.88
一台windows 192.168.0.1
数据库 二台均为oracle10.2.0.1.0
目的: 在192.168.0.1上建立DBLINK 连接192.168.0.88
step 1
在192.168.0.1建一个连接,用于连接远程数据库.(本测试为了方便,取名就叫192.168.0.88)
step 2
在linux 下建立一个oracle登陆用户,并建立一个test表,插入数据用于测试用
SQL>create user abc identified by abc;
user created.
SQL> grant connect,resource to te;
Grant succeeded.
SQL> create table test(id int,v_name varchar2(20));
Table created.
SQL> insert into test values(1,'test');
1 row created.
SQL> insert into test values(2,'test');
1 row created.
SQL> commit;
Commit complete.
step 3
查看windows下oracle的global_name
SQL>select * from global_name;
GLOBAL_NAME
--------------------------------------------------------------------------------
ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM
step 4
在windows机器上建立DBLINK
SQL> CREATE DATABASE LINK test
1 CONNECT TO ABC
2 IDENTIFIED BY ABC
3* USING '192.168.0.88';
数据库链接已创建
SQL> select owner,object_name from dba_objects where object_type='DATABASE LINK';
OWNER OBJECT_NAME
------------------------------ ----------------------------------------
SYSTEM TEST.REGRESS.RDBMS.DEV.US.ORACLE.COM
(注:虽然建的dblink名叫test,但是数据库自动会为test名后叫上global_name,这个本人也不清楚,有人知道的话解释一下)
step 5
测试DBLINK 是否成功
SQL> select * from test@TEST.REGRESS.RDBMS.DEV.US.ORACLE.COM;
ID NAME
---------- --------------------
1 test
2 test
备注:
关于global_name参数
建立DBLINK之前,见意先查看一下global_name参数的值
SQL> show parameter global_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size string
global_names boolean FALSE
如果global_names 的值为true,则DBLINK的名称必须跟远程数据库的global_name名称一样
使用下面的语句修改该参数:
SQL> alter system set global_names=false;
(注意是修改本地数据库)
阅读(1090) | 评论(0) | 转发(0) |