簡體   English   中英

Oracle 11g破碎的實體化視圖:是否停止刷新而不刪除視圖或刷新視圖?

[英]Oracle 11g Broken Materialized view: Stop refresh without dropping view or refreshing view?

所以我有一個綜合化的視圖(我知道...):

CREATE MATERIALIZED VIEW vw_my_view_here
REFRESH COMPLETE START WITH SYSDATE NEXT SYSDATE + 1/24 AS 
/*huge-ass select statement here*/
UNION ALL
/*huge-ass select statement here*/
UNION ALL
/*huge-ass select statement here*/
UNION ALL
/*huge-ass select statement here*/

這已經存在於我們的系統中一段時間​​,而不會引起問題。 這些選擇查詢之一已損壞(以某種方式-可能在基礎表中發生模式更改),並且已連續運行24小時並消耗了所有資源。 這對盒子上的其他東西來說是個問題。

我無法刪除或修改視圖-因為它是完全未記錄的(我知道...),因此我首先需要弄清楚是誰使用了它,如何填充了它等等。

我試圖殺死正在處理查詢的進程,但此后似乎立即觸發了另一個查詢。

如何停止實例化視圖,而無需1)刪除視圖和(2)不刷新視圖(因為這需要24個小時以上的時間以及我們所有的盒資源)。

我試過跑步

 alter materialized view view_name refresh on demand;

但它似乎無限運行,對原始的大規模查詢沒有影響。

有任何想法嗎?

更改刷新設置的文檔說:

此子句僅設置默認的刷新選項。 有關實際實施刷新的說明,請參考《 Oracle數據庫高級復制》和《 Oracle數據庫數據倉庫指南》。

因此,您的另一alter materialized view語句本身並未進行刷新。 它只是在等待當前正在執行的刷新完成,然后才能更新該視圖的數據字典。 當前刷新完成(或終止)后, alter將完成並阻止進一步的自動刷新開始。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM