oracle物化视图快速更新

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle物化视图快速更新相关的知识,希望对你有一定的参考价值。

建立测试表

create table T_table nologging as select * from dba_objects;
create table t_table_1 nologging as select * from dba_tables;

--建立日志记录

create materialized view log on T_table with rowid ,sequence(object_name,object_type,owner) including new values;
create materialized view log on t_table_1 with rowid,sequence(table_name)  including new values;

--建立物化视图

create materialized view mv_t_table nologging 
refresh fast on demand 
with rowid 
START WITH TO_DATE(‘21-08-2017 10:09:08‘, ‘DD-MM-YYYY HH24:MI:SS‘) NEXT SYSDATE + 1/(24*60) 
as select count(*),a.object_type,a.owner from T_table a,t_table_1 b  where a.object_name=b.table_name 
group by a.object_type,a.owner


--测试

select * from mv_t_table where owner=‘SYSTEM‘;
delete from t_table where owner=‘SYSTEM‘;
insert into t_table select * from dba_objects where  owner=‘SYSTEM‘;


--查看日志生成量

select a.name, b.value from v$statname a, v$mystat b where a.statistic# = b.statistic# and a.name = ‘redo size‘;


--查看刷新日志

SELECT owner,mview_name,last_refresh_scn,last_refresh_date,query,REVISION FROM dba_mview_analysis WHERE owner=‘UTF32‘;

--查看日志记录表,MLOG$为日志记录表,一旦更新完成,此表的内容会被清掉;

select * from MLOG$_T_TABLE
select * from MLOG$_T_TABLE_1;

官方说明参见:http://docs.oracle.com/cd/E11882_01/server.112/e10706/repmview.htm#REPLN265

本文出自 “snowhill” 博客,请务必保留此出处http://snowhill.blog.51cto.com/339421/1958119

以上是关于oracle物化视图快速更新的主要内容,如果未能解决你的问题,请参考以下文章

oracle物化视图不会自动更新是怎么回事

Oracle设置物化视图的自动刷新

如何获得oracle物化视图 定时刷新时 刷新所用的时间 或者是监控 物化视图在jobs中建立的job任务的执行时间

Oracle 物化视图日志

Oracle物化视图梳理

Oracle-视图