加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle快照及dblink使用(两台服务器数据同步)

发布时间:2020-12-12 15:26:02 所属栏目:百科 来源:网络整理
导读:--名词说明: 源—— 被同步 的数据库; 目的——要 同步到 的数据库; 一、创建dblink: 1、在目的数据库上,创建dblink: -- Drop existing database link drop database link DLINKMYTEST;-- Create database link create database link DLINKMYTEST conn

--名词说明:

源——被同步的数据库;

目的——要同步到的数据库;

一、创建dblink:

1、在目的数据库上,创建dblink:

-- Drop existing database link 
drop database link DLINKMYTEST;
-- Create database link 
create database link DLINKMYTEST
  connect to MYTEST identified by MYTEST 
  using 'ORCL';

二、创建快照:

1、在源和目的数据库上同时执行一下语句,创建要被同步的表,

drop table tb_anson; 
create table tb_anson(c1 varchar2(12)); 
alter table tb_anson add constraint pk_anson primary key (C1);

2、在目的数据库上,测试dblink连接是否成功:
select * from tb_anson@DLINKMYTEST; 
select * from tb_anson; 

3、在目的数据库上,创建要同步表的快照日志

Create snapshot log on tb_anson; 

4、创建快照,快照(被同步(源)数据库服务必须启动)
Create snapshot sn_anson as select * from tb_anson@DLINKMYTEST; 

5、设置快照刷新时间:
Alter snapshot sn_anson refresh fast Start with sysdate+1/24*60 next sysdate+10/24*60;
--oracle自动在1分钟后进行第一次快速刷新,以后每隔10分钟快速刷新一次
Alter snapshot sn_anson refresh complete Start with sysdate+30/24*60*60 next sysdate+1; 
--oracle自动在30钞后进行第一次完全刷新,以后每隔1天完全刷新一次

6、手动刷新快照:

begin 
  dbms_refresh.refresh("SN_ANSON"); 
end; 

根据需要修改快照刷新的间隔时间;
---- test1用户下的快照sn_test1为了与test2用户下的主表testtt保持同步,需要不断刷新快照。只有设定了快照的刷新间隔时间,oracle才会自动刷新该快照。
---- 快照的刷新有两种方式:快速刷新和完全刷新。快速刷新需要快照的主表先有快照日志存在;完全刷新时oracle执行快照查询,将结果放入快照。快速刷新比完全刷新快,因为快速刷新将主数据库的数据经网络发送到快照的数据少,仅需传送主表中修改过的数据,而完全刷新要传送快照查询的全部结果。

Alter snapshot sn_test1 refresh fast
Start with sysdate+1/1440 next sysdate+1/144; 
--{ 此SQL语句的意思为:设定oracle自动在1分钟
(1/24*60)后进行第一次快速刷新,以后每隔10分钟
(10/24*60)快速刷新一次。}
Alter snapshot sn_test1 refresh complete
 Start with sysdate+1/2880 next sysdate+1;
--{ 此SQL语句的意思为:设定oracle自动在30钞
(30/24*60*60)后进行第一次完全刷新,
以后每隔1天完全刷新一次。}


-------END--------

参考:

1:http://www.2cto.com/database/201309/244063.html

2:http://www.51itstudy.com/35329.html

3:http://blog.chinaunix.net/uid-9789791-id-3351605.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读