物化視圖刷新方式 Oracle設(shè)置物化視圖的自動(dòng)刷新?
Oracle設(shè)置物化視圖的自動(dòng)刷新?創(chuàng)建物化視圖時(shí),可以定義刷新方法,一般分為快速刷新和完全刷新。前者只更新主表中的更改記錄(主表必須建立物化視圖日志),后者更新MV中的所有數(shù)據(jù)。此外,更新方法可以分
Oracle設(shè)置物化視圖的自動(dòng)刷新?
創(chuàng)建物化視圖時(shí),可以定義刷新方法,一般分為快速刷新和完全刷新。前者只更新主表中的更改記錄(主表必須建立物化視圖日志),后者更新MV中的所有數(shù)據(jù)。此外,更新方法可以分為:按需更新、按提交更新和按強(qiáng)制更新。提交時(shí)及時(shí)更新。實(shí)際上,用戶可以在創(chuàng)建物化視圖時(shí)指定更新頻率。我給你舉個(gè)例子
創(chuàng)建物化視圖MVuuTerminal
快速刷新
下一個(gè)sysdate 30/(24*60)
as
select*from…
這個(gè)MV每30分鐘刷新一次,只刷新更改的數(shù)據(jù)
在執(zhí)行項(xiàng)目a時(shí),在生產(chǎn)數(shù)據(jù)庫(kù)上創(chuàng)建物化視圖日志,并使用dblink在項(xiàng)目A的數(shù)據(jù)庫(kù)上創(chuàng)建物化視圖,物化視圖基于ROWID,另外生產(chǎn)數(shù)據(jù)庫(kù)中的表都是千萬(wàn)級(jí)表,刷新時(shí)間要求每半小時(shí)一次。在創(chuàng)建物化視圖時(shí),也會(huì)使用快速刷新,但刷新時(shí)會(huì)出現(xiàn)一個(gè)問(wèn)題:刷新時(shí)會(huì)將物化視圖日志的內(nèi)容與主表中的數(shù)據(jù)進(jìn)行比較,確認(rèn)物化日志中的數(shù)據(jù)是否存在于主表中,然后再刷新,這會(huì)減慢生產(chǎn)庫(kù)的速度。此問(wèn)題是由客戶方的Oracle數(shù)據(jù)庫(kù)管理員發(fā)現(xiàn)的。如何避免這個(gè)問(wèn)題?基于主鍵的物化視圖能避免這個(gè)問(wèn)題嗎Cpftaracdt with ROWID