Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92186213
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-21 23:27:12

 来源:CSDN  

目的:创建一个实体化视图站点,定时刷新,获取主站点中指定表的变化,这个实体化站点可以作为查询服务器使用
步骤:
1。主站点上创建实体化视图日志表
CREATE MATERIALIZED VIEW LOG ON kamus.account2004;
2。实体化视图站点上创建公用数据库链接
conn system/password
CREATE PUBLIC DATABASE LINK orcl using ’ORCL’;
3。实体化视图站点上创建刷新组,本例中3分钟刷新一次
conn system/password
BEGIN
   DBMS_REFRESH.MAKE (
      name => ’kamus.test_repg’,
      list => ’’, 
      next_date => SYSDATE, 
      interval => ’SYSDATE + 3/(24*60)’,
      implicit_destroy => FALSE, 
      rollback_seg => ’’,
      push_deferred_rpc => TRUE,
      refresh_after_errors => FALSE);
END;
/
4。实体化视图站点上创建用户私有数据库链接
conn kamus/password
CREATE DATABASE LINK orcl CONNECT TO kamus IDENTIFIED BY password;
5。实体化视图站点上创建实体化视图
conn kamus/password
CREATE MATERIALIZED VIEW KAMUS.ACCOUNT2004 REFRESH FAST WITH PRIMARY KEY  AS SELECT * FROM   KAMUS.ACCOUNT2004@orcl;
6。实体化视图站点上将创建的视图加入刷新组
conn kamus/password
exec DBMS_REFRESH.ADD(name => ’kamus.TEST_REPG’, list => ’kamus.ACCOUNT2004’, lax => TRUE);
7。测试,在主站点中更新ACCOUNT2004表,过3分钟检查实体化试图站点中的视图,发现更新已经复制成功。
以上为建立只读实体化视图站点的最简单方法:
不需要创建其它的任何用户,比如复制环境中需要的传播者,刷新者,接收者等等
不需要创建任何复制组
不需要生成任何复制对象,不需要生成任何对象的复制支持

阅读(184) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~