建立快照一般寫start with sysdate+1/10000, 表示建好后馬上刷新一次,感覺你寫start with sysdate是有點問題的,sysdate時候這個快照還正在創(chuàng)建,等創(chuàng)建好以后已經(jīng)過了sysdate,可能意味著永遠沒有start,也就沒有next了,這個只是看著有點懷疑,不很確定,你自己改了試下就知道了,此外你源表的快照日志應該是已經(jīng)建了的吧?tableemp確定是表嗎?什么版本的ORACLE?
創(chuàng)新互聯(lián)秉承實現(xiàn)全網(wǎng)價值營銷的理念,以專業(yè)定制企業(yè)官網(wǎng),網(wǎng)站建設、成都網(wǎng)站制作,微信小程序定制開發(fā),網(wǎng)頁設計制作,手機網(wǎng)站制作設計,全網(wǎng)營銷推廣幫助傳統(tǒng)企業(yè)實現(xiàn)“互聯(lián)網(wǎng)+”轉(zhuǎn)型升級專業(yè)定制企業(yè)官網(wǎng),公司注重人才、技術和管理,匯聚了一批優(yōu)秀的互聯(lián)網(wǎng)技術人才,對客戶都以感恩的心態(tài)奉獻自己的專業(yè)和所長。
首先,在master數(shù)據(jù)庫上創(chuàng)建一個可選的快照日志log。假如您不想做快速刷新,可以不需要創(chuàng)建日志log。
注意:快速刷新不支持復雜的查詢。
最后在快照站點snapshot site上創(chuàng)建一個snapshot/materialized 視圖。
最后參考此示例:
MASTER SITE:
SQL create materialized view log on table EMP;
SNAPSHOT SITE:
SQL create materialized view emp
refresh fast with primary key
start with sysdate
next sysdate + 1/(24*60)
as (select * from emp);
先說一下Oracle快照??煺帐且环N查詢,目的是為了使兩個遠程數(shù)據(jù)庫的表進行同步。創(chuàng)建快照語句是CREATE SNAPSHOT ... AS subquery;
對應快照可以創(chuàng)建快照日志,存放快照主表的更新數(shù)據(jù),可用這些數(shù)據(jù)刷新快照的主表。
問題中給出的語句就是創(chuàng)建快照日志:CREATE SNAPSHOT LOG ON
你還是系統(tǒng)的看一下關于AWR報告的資料吧,系統(tǒng)默認是一小時自己創(chuàng)建一次快照,但是根據(jù)快照來取某個時間段的報告,則需要DBA介入。通過你提問問題的方式,建議你系統(tǒng)查找awr的資料,不然即使給你提供了包,你也不會用。
snapshot就是快照
oracle數(shù)據(jù)庫的快照是一個表,它包含有對一個本地或遠程數(shù)據(jù)庫上一個或多個表或視圖的查詢的結(jié)果。相當于主表的查詢子集,使用快照可以加快數(shù)據(jù)的查詢速度;在保持不同數(shù)據(jù)庫中的兩個表的同步中,利用快照刷新,數(shù)據(jù)的更新性能也會有很大的改善。