在oracle下如何创建database link

在oracle下如何创建database link

 

--创建database link
CREATE DATABASE LINK 数据库链接名
CONNECT TO 用户名 IDENTIFIED BY 密码
USING ‘本地配置的数据的实例名’;

注:如果创建全局dblink,必须使用systm或sys用户,在database前加public。

-- 删除database link
DROP PUBLIC DATABASE LINK 数据库链接名

--查询远端数据库里的表:
SELECT …… FROM 表名@数据库链接名;

--同义词创建
CREATE SYNONYM 同义词名 FOR 表名;
CREATE SYNONYM 同义词名 FOR 表名@数据库链接名;

--建立一个本地的远程视图
CREATE VIEW HI_FLDDICT
AS
SELECT * FROM  HI_FLDDICT@hr_oracle

详细步骤;

1 查看global_name

SQL> show parameter global_name;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_names                         boolean     FALSE
SQL> select * from global_name;

GLOBAL_NAME
--------------------------------------------------------------------------------

ORCL

SQL>

2 如果global_names为FALSE

当数据库参数global_name=false时,就不要求数据库链接名称跟远端数据库名称一样,可以随便命名。

例如:
(1)已经配置本地服务
-- Drop existing database link
drop public database link HR_ORACLE;

-- Create database link
create public database link HR_ORACLE
  connect to user identified by password
  using 'hr';
 
(2)未配置本地服务  优点是这样不受本地服务的影响
create database link HR_ORACLE_TEST
connect to user identified by password
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 101.101.101.101)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = hr)
)
)'; 
 
 

3 如果global_names为TRUE
当数据库参数global_name=true时,那就要求数据库链接名称跟远端数据库名称一样。

-- Drop existing database link
drop public database link AHHR;

-- Create database link
create public database link AHHR
  connect to user identified by password
  using 'hr';

语法:
作者:深潭
出处:http://www.cnblogs.com/dbasys/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/dbasys/p/2127604.html