首页 > 开发 > 综合 > 正文

最简单的创建复制环境中只读实体化视图站点的方法

2024-07-21 02:07:16
字体:
来源:转载
供稿:网友
  • 本文来源于网页设计爱好者web开发社区http://www.html.org.cn收集整理,欢迎访问。

  • 目的:创建一个实体化视图站点,定时刷新,获取主站点中指定表的变化,这个实体化站点可以作为查询服务器使用

    步骤:

    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   [email protected];

    6。实体化视图站点上将创建的视图加入刷新组

    conn kamus/password

    exec dbms_refresh.add(name => 'kamus.test_repg', list => 'kamus.account2004', lax => true);

    7。测试,在主站点中更新account2004表,过3分钟检查实体化试图站点中的视图,发现更新已经复制成功。

    以上为建立只读实体化视图站点的最简单方法:

    不需要创建其它的任何用户,比如复制环境中需要的传播者,刷新者,接收者等等

    不需要创建任何复制组

    不需要生成任何复制对象,不需要生成任何对象的复制支持

     
    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表