a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > Oracle > 正文

Oracle 10g分區表維護中的兩個注意事項

2024-08-29 13:52:36
字體:
來源:轉載
供稿:網友
Oracle 10g分區表維護中的兩個注意事項:

1.全局索引

SQL> alter table analyse_content truncate subpartition DATA0712_DEYANG;

Table truncated

truncate分區后,修改或者插入數據報錯:

ORA-01502: index 'phs.pk' or partition of such index is in unusable state

這個時候只能rebuild index

SQL> alter index phs.pk rebuild;

Index altered

執行以后恢復正常,或者使用如下語句:

SQL> alter table analyse_content truncate subpartition DATA0712_ZIGONG UPDATE

GLOBAL INDEXES;

Table truncated

這樣它會自動恢復索引。

2.物化視圖

對于已經建有fast refresh view的分區表來說,truncate和drop分區/表會導致物化視圖出錯。

SQL> alter table analyse_content drop subpartition DATA0712_MIANYANG;

Table altered

SQL> alter table analyse_content truncate subpartition DATA0712_LUZHOU;

Table truncated

再次查詢物化視圖,這個兩個分區的數據仍然存在,說明物化視圖不能對這種DDL語句進行更新。

嘗試在基礎表插入數據,報錯:

ORA-32313: REFRESH FAST of " " unsupported after PMOPs

這時候必須手工刷新MV

SQL> exec dbms_mview.refresh('mv_analyse_content','f');

begin dbms_mview.refresh('mv_analyse_content','f'); end;

ORA-32313: PMOP 之后不支持 "PHS"."MV_ANALYSE_CONTENT" 的 REFRESH FAST

ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2255

ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2461

ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2430

ORA-06512: 在 line 1

看來快速刷新'f'是不行,還是得完全刷新'c'

SQL> exec dbms_mview.refresh('mv_analyse_content','c');

PL/SQL PRocedure successfully completed

執行完后,MV里面的數據恢復正常,基表不再報錯。

實際10g里面,truncate分區后,某些物化視圖可以執行fast refresh,具體有很多限制,

要查詢doc,反正select * from table這種視圖肯定可以'f',不過卻沒有什么意義。

---2008 04 22 在doc上找到了PCT特性的限制,如下:

At least one of the detail tables referenced by the materialized view must be

partitioned.

Partitioned tables must use either range, list or composite partitioning.

The top level partition key must consist of only a single column.

The materialized view must contain either the partition key column or a partition

marker or ROWID or join dependent expression of the detail table. See Oracle

Database PL/SQL Packages and Types Reference for details regarding the DBMS_

MVIEW.PMARKER function.

If you use a GROUP BY clause, the partition key column or the partition marker or

ROWID or join dependent expression must be present in the GROUP BY clause.

If you use an analytic window function or the MODEL clause, the partition key

column or the partition marker or ROWID or join dependent expression must be

present in their respective PARTITION BY subclauses.

Data modifications can only occur on the partitioned table. If PCT refresh is being

done for a table which has join dependent expression in the materialized view,

then data modifications should not have occurred in any of the join dependent

tables.

The COMPATIBILITY initialization parameter must be a minimum of 9.0.0.0.0.

PCT is not supported for a materialized view that refers to views, remote tables, or

outer joins.

PCT-based refresh is not supported for UNION ALL materialized views.

對于海量數據庫,如果不能使用DROP分區,則delete相當慢。

如果使用了,又會導致完全刷新MV,同樣慢。

在物化視圖的時候要認真考慮PCT特性。

對于分區表 已經相關索引,快照的維護,建議還是參考Oracle的DOC,在admin guide和

dataware house guide里有非常完善描述。雖然沒有涉及internal,但完全可以滿足應用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 四虎.com| 奇米色777欧美一区二区 | 亚洲日本精品一区二区三区 | 免费视频一二三区 | 欧美日韩电影一区 | 精品色 | www.av视频 | 欧美黑人一区 | 国产aaa一级毛片 | 色综合天天综合网国产成人网 | 性色浪潮 | 亚洲人成人一区二区在线观看 | 欧美2区| 国产成人综合在线 | 亚洲成人免费网址 | 国产免费一区 | 一区二区三区的视频 | 成人午夜免费视频 | 日韩在线一区二区 | 色接久久 | 精品96久久久久久中文字幕无 | 亚洲视频免费在线观看 | 日本黄a三级三级三级 | 久久久久高清 | 亚洲欧美日韩电影 | 亚洲一区日韩 | 精品日韩欧美一区二区三区 | 日本一区二区视频 | 亚洲国产伊人 | 欧美日韩在线第一页 | 欧美精品成人一区二区三区四区 | 精品1区| 国产网站在线 | 国产亚洲精品久久久久动 | 西西做爰免费视频 | 久久蜜桃视频 | 成人欧美一区二区三区在线播放 | 亚洲第1页 | 天天摸夜夜摸爽爽狠狠婷婷97 | 日韩一二三区视频 | 亚洲成人三级 |