Oracle创建dblink

简介

dblink主要是用来做跨库访问的,想要通过A服务器上的数据库访问B服务器上的数据库,创建DBLINK就可以实现。

创建步骤

实例:A服务器数据库去访问B服务器数据库。

1.检查A服务器到B服务器+端口是否能telnet通

在A服务器上操作
telnet ip 端口
确保能通

2.查看B服务器上tnsname.ora文件

cat $ORACLE_HOME/network/admin/tnsname.ora

XXUAT_BALANCE=
(DESCRIPTION= (ADDRESS_LIST= (LOAD_BALANCE=YES) (FAILOVER=YES) (ADDRESS=(PROTOCOL=tcp)(HOST=10.0.XX.12)(PORT=1601)) (ADDRESS=(PROTOCOL=tcp)(HOST=10.0.XX.13)(PORT=1601)) ) (CONNECT_DATA= (SERVICE_NAME=XXUAT) )

注意:集群数据库tns文件找BALANCE、因为BALANCE记录的是两个节点VIP的ip,尽量做到规范。

找到对应的参数HOST=10.0.XX.12、10.0.XX.13 SERVICE_NAME=XXUAT

3.在A服务器上操作:配置dblink

CREATE DATABASE LINK XXUATTOXXXUAT.CRC.COM.CN 
 CONNECT TO  APPS IDENTIFIED BY "passwd"
 USING'(DESCRIPTION =
 (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.XX.12)(PORT = 1521))
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.XX.13)(PORT = 1521))
 )
 (CONNECT_DATA =
  (SERVICE_NAME = XXUAT)
 )
)';

参数说明:
username:需要访问数据用户名 如APPS用户
password APPS用户密码,
HOST:visist_IP 虚拟ip
PORT:数据库端口
SERVICE_NAME :db_name数据库名称

4.验证是否创建成功

– APPS用户查询DBLINK

set lines 132 pages 50000
select owner,object_name from dba_objects where object_type='DATABASE LINK';

查看是否有上面创建的DBLINK

XXUATTOXXXUAT.CRC.COM.CN 

查询DBLINK是否可以使用

SELECT * FROM dual@XXUATTOXXXUAT.CRC.COM.CN  ;

显示为以下时则DBLINK创建成功

D
-
X

扩展知识:

删除public类型的dblink

DROP PUBLIC DATABASE LINK dblink_name;

删除private类型的dblink,只有创建者自己能删

DROP DATABASE LINK dblink_name;

查询dblink

select owner,object_name from dba_objects where object_type='DATABASE LINK';

相关文章

学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习...
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面...
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生...
Can’t connect to local MySQL server through socket \'/v...
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 ...
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服...