共計 680 個字符,預計需要花費 2 分鐘才能閱讀完成。
本篇內容主要講解“oracle 中 Job 怎么定期執行存儲刷新物化視圖”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“oracle 中 Job 怎么定期執行存儲刷新物化視圖”吧!
(一)問題:
最近一個項目,我們的系統中需要處理老數據,但是有一些客觀限制:(都是 Oracle11.2.0.2)
(1)這些老數據存儲在人家的數據庫中
(2)這些老數據還會持續更新
(3)不能動人家的數據庫
(4)我們需要針對人家的數據庫中的兩張表做左鏈接
最終我們決定用 DBLink 創建到改老數據庫的數據庫鏈接,然后創建一個物化視圖,該物化視圖 5 分鐘更新一次,給予兩個表的左鏈接,所以只能采用 complete 的刷新方式。
但是工作了幾天之后,我通過 select * from user_jobs 發現我的物化視圖不再自動更新了,failure 失敗的次數為 16 次,不知道是不是因為我們每天下班都會將老數據庫以及我們系統用到的新數據庫都關閉的原因。
(二)解決方案:
不管了,我決定創建一個 Job,定時執行一個存儲過程,在這個存儲過程中來刷新這個物化視圖,并且將異常信息記錄到數據庫表中:
1 創建存放異常信息的數據庫表:
2 創建存儲過程刷新物化視圖:
3 創建 Job 定時執行存儲過程:
如果要刪除 Job,用 remove 命令,傳入 Job 號(通過 select * from user_jobs 查看)即可。
到此,相信大家對“oracle 中 Job 怎么定期執行存儲刷新物化視圖”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!