分布式数据库
分布式数据库简单理解:
1物理上存放在网络中的多个节点上,逻辑上是一个整体
2对1的理解如下
这里写图片描述

定义数据库链路

create database link db_link_name 
connect to user_name identified by password 
using tns_name;

db_link_name:远程数据库的服务名(数据库的真实名称sid)
user_name:远程数据库的用户名
password:远程数据库的口令
tns_name:是所要连接的数据库的服务命名,也就是在本机上建立的NET8服务命名。

数据库链路案例
深圳的数据库A 访问北京的数据库B
1在数组的数据库中创建数据链路

create database link beijing
connect to scott identified by 123 
using 'tobeijing';


tobeijing:是在深圳的数据库A中创建
具体如下:


  # tnsnames.ora Network Configuration File: D:\oracle\product\11.2.0\dbhome_1\network\admin\tnsnames.ora



tobeijing =
  (DESCRIPTION =
    (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST =北京数据库IP)(PORT = 1521))
    )
    (CONNECT_DATA =
  (SERVICE_NAME = ORCL)
    )
  )


2使用北京的数据库,2个表连接查询

select dname,ename from dept d,emp@beijing  e
where e.deptno=d.deptno;

emp@beijing :连接北京数据库,用户是scott ,表是emp.

3使用同义词(屏蔽远程信息)

create synonym emp_bj for emp@beijing;

所以对2的sql可以改为

select dname,ename from dept d,emp_bj  e
where e.deptno=d.deptno;
posted on 2017-06-12 11:06  2637282556  阅读(168)  评论(0编辑  收藏  举报