跳轉到內容

Oracle 和 DB2 的比較和相容性/程序模型/一致性/Oracle

來自 Wikibooks,開放世界的開放書籍

ANALYZE 命令,在本節中最佳化器部分之前見過,是 Oracle 用於驗證表、索引、簇或物化檢視完整性的命令。在這種情況下,您將 ANALYZE 語句與 VALIDATE STRUCTURE 選項一起使用。如果結構損壞,您將收到錯誤訊息。

例如,索引驗證確認索引中的每個條目都指向關聯表的正確行。要更正損壞的索引、表或簇,您可以刪除並重新建立它。如果物化檢視損壞,您應該進行重新整理並檢視是否可以解決問題。如果不行,您需要刪除並重新建立它。

您可以使用 CASCADE 選項驗證物件及其所有依賴物件。由於 CASCADE 資源密集,您可以使用 FAST 更快地進行驗證。FAST 使用最佳化的檢查演算法檢查損壞。FAST 不報告有關損壞的詳細資訊,因此,如果您發現損壞,您需要使用不帶 FAST 的 CASCADE 選項來定位它。您也可以在 SQL 中線上驗證,但存在效能開銷。

dbverify 允許外部分析資料庫塊以檢視實際塊結構是否與預期塊結構相符。如果對開啟的資料庫執行 dbverify,它可能會報告虛假損壞(DBWR 程序可能會干擾 dbverify)。

檢查 Oracle 資料庫中損壞的另一種方法是匯出它(整個資料庫或選定物件)。如果您只對損壞感興趣,您可以將資料庫匯出到一個虛擬檔案。匯出中發現的錯誤將指示資料庫中是否存在損壞/一致性問題。

華夏公益教科書