Oracle

ORA-31114: XDB 配置已被刪除或損壞

  • February 19, 2018

ORA-31114: XDB 配置已被刪除或損壞

如何重新創建 XDB 配置?我需要先刪除現有組件嗎?

順便說一句,出於同樣的原因,我無法執行 UTLRP scritp。我也無法執行數據泵導出。

刪除 XDB


執行以下腳本以刪除 XDB

SQL> @C:\Oracle\Ora11\R2\rdbms\admin\catnoqm.sql

  • 在刪除 XDB 並再次安裝之前重新啟動數據庫非常重要。

安裝 XDB


catqm.sql 腳本在執行時需要將以下參數傳遞給它:

A. XDB 使用者密碼

B. XDB 使用者預設表空間

(可以指定除 SYSTEM、UNDO 和 TEMP 之外的任何表空間。指定的表空間必須在執行腳本之前已經存在。)

C. XDB 使用者臨時表空間

D. SecureFiles = 是或否

(如果指定 YES,XDB 儲存庫將使用 SecureFile 儲存。如果指定 NO,將使用 LOBS。要使用 SecureFiles,兼容性必須設置為 11.2。為 XDB 儲存庫指定的表空間必須使用自動段空間管理( ASSM)用於使用 SecureFiles。)

因此執行 catqm.sql 的語法如下:

SQL> catqm.sql ABCD

SQL> @C:\Oracle\Ora11\R2\rdbms\admin\catqm.sql XDB XDB TEMP YES

重新編譯數據庫中的所有無效對象

SQL> @C:\Oracle\Ora11\R2\rdbms\admin\utlrp.sql

驗證 XDB 狀態


檢查系統資料庫

SQL> select comp_name, version, status from dba_registry where comp_id = 'XDB';


COMP_NAME            VERSION     STATUS
-------------------  ----------  -----
Oracle XML Database  11.2.0.1.0  VALID

檢查 XDB 擁有的無效對象

SQL> select owner, object_name, object_type, status from dba_objects where owner = 'XDB' and status = 'INVALID';

no rows selected

引用自:https://dba.stackexchange.com/questions/198237