zoukankan      html  css  js  c++  java
  • Oracle物化视图,物化视图日志,增量刷新同步远程数据库

    1.创建DBLINK

     -- Drop existing database link 
    drop public database link LQPVPUB;
    -- Create database link
    CREATE DATABASE LINK LQPVPUB 6 CONNECT TO "INTEPDM" identified by "password" 8 using "LQPVPUB"

    2.创建物化视图日志(远程主机操作)

     CREATE MATERIALIZED VIEW LOG ON dm_basicmodel  
    WITH PRIMARY KEY
    INCLUDING NEW VALUES;

    3.创建物化视图

     CREATE MATERIALIZED VIEW mv_model --创建物化视图 
     BUILD IMMEDIATE --在视图编写好后创建
     REFRESH FAST WITH PRIMARY KEY --根据主表主键增量刷新(FAST,增量)
     ON DEMAND -- 在用户需要时,由用户刷新 
     ENABLE QUERY REWRITE --可读写
     AS
    SELECT bm_id,bm_partid,bm_code from dm_basicmodel@LQPVPUB t --查询语句

    4.删除物化视图和日志

    日志和物化视图要分开删除

     DROP MATERIALIZED VIEW LOG ON GG_ZLX_ZHU@TOCPEES;   

     DROP MATERIALIZED VIEW GG_ZLX_ZHU;  

    5.物化视图更新

    CREATE OR REPLACE PROCDURE P_MVIEW_REFRESH AS  
    
    BEGIN  
    
        DBMS_MVIEW.REFRESH('GG_ZLX_ZHU,GG_ZLX_FU','ff');  
    
    END P_MVIEW_REFRESH;  

    注意:

    5.1、如果需要同时刷新多个物化视图,必须用逗号把各个物化视图名称连接起来,并对每个视图都要指明刷新方式

         (f、增量刷新,c、完全刷新,?、强制刷新)。

    5.2、当日志和物化视图创建好后,删除日志,则需要重新创建物化视图,否则无法增量刷新。

    5.3、因为上面写的物化视图时根据主键进行更新,因此,主表必须有主键。

    6.查询刷新情况

    对于完全刷新(Complete),刷新耗时会记录在DBA_MVIEW_ANALYSIS的FULLREFRESHTIM列中。

    而对于可快速刷新(Fast)的时间,会记录在INCREFRESHTIM列中。

    这两个值的单位都是秒。
    SELECT mview_name, last_refresh_date, fullrefreshtim, increfreshtim
    FROM dba_mview_analysis
    WHERE owner='JOHN';

     

  • 相关阅读:
    php的webservice的soapheader认证问题
    训练与解码
    ajax 图片上传
    js倒计时
    数据分析有价值的博客
    [Luogu P5675][GZOI2017]取石子游戏
    [BZOJ4558/LOJ2025/Luogu3271][GZOI2016/JLOI2016/SHOI2016]方
    [BZOJ4557/LOJ2024/Luogu3267][GZOI2016/JLOI2016/SHOI2016]侦察守卫
    PKUWC2019游记
    随机带权选取文件中一行 分类: linux c/c++ 2014-06-02 00:11 344人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/Acamy/p/6550679.html
Copyright © 2011-2022 走看看