分布式数据库功能
分布式 DB
物理上分布在网络不同节点上的数据,从
逻辑上可看作是一个整体( DB)。
每个节点
具有
场地自治
跨节点

全局操作
访问远程数据库
本地 o8i1(247) 远程 o8i2(248)
ora1 ora2
数据库链
linko8i2
数据库链
create database link L2
connect to 用户名 identified by 口令
using `linko8i2` ;
select * from dep@L2 ;
select ename,tel from emp,dep@L2
where emp.dno=dep.dno ;
$HOME/network/admin/tnsname.ora
透明 - 别名
create synonym dep
for dep@L2 ;
select ename,tel from emp,dep where
emp.dno=dep.dno ;
分片
分片 - 视图
Create view emp
as
select * from emp1@L1
union
select * from emp2@L2;
create view emp
as
select emp1.ename,emp2.sal
from emp1,emp2
where emp1.eno=emp2.eno ;








复制 - 快照
Create snapshot emp
refresh fast complete force
start with sysdate
next next_day(sysdate,`Monday`)
as select * from emp@L1 ;
Create snapshot log on emp
时间表示
? 下周的同一天
sysdate + 7
? 每星期五上午 9点
next_day( trunc(sysdate),’星期五’ ) + 9/24
? 每一小时
sysdate +1/24
? 每 10秒
sysdate + 10/(24*60*60)
触发器
create trigger synctemp
after insert or update or delete
on temp
for each row
begin
if inserting then
insert into temp@l1 values(:new.a,:new.b,:new.c);
elsif deleting then
delete from temp@l1 where a=:old.a;
触发器
elsif updating then
if updating(‘b') then
update temp@l1 set b=:new.b where a=:old.a ;
end if
if updating(‘c') then
update temp@l1 set c=:new.c where a=:old.a ;
end if ;
end if ;
end ;
/