Oracle

Oracle遷移無法創建索引

  • November 29, 2015

我想使用 expdp 和 impdp 實用程序將數據庫實例的內容移動到另一個。源實例是版本 12.1.0.1.0,目標是 11.2.0.1.0,所以我修改了 expdp 命令以包含版本:

expdp system@db1/pass schemas=main directory=dmpdir dumpfile=backup-26-11-2015.dmp logfile=backup-26-11-2015.log version=11.2.0.1.0

但是,當我嘗試將此 dmp 文件導入 11.2 實例時,它會複製除索引之外的所有內容,並出現此錯誤:

ORA-39083: Object type INDEX failed to create with error:
ORA-06550: line 2, column 1:
PLS-00306: wrong number or types of arguments in call to 'CREATE_INDEX'
ORA-06550: line 2, column 1:
PL/SQL: Statement ignored
Failing sql is:
BEGIN 
ctxsys.driimp.create_index('ACTCI_T1DX','ACTCI',USER,
'','1','DESCRIPTION','1',
'100','0','8130','1',
'LANGCODE',NULL, NULL, 0,'Y',NULL, NULL, NULL, NULL, NULL);


ctxsys.driimp.set_object('DATASTORE','DIRECT_DATASTORE',0);

ctxsys.driimp.set_object('DATATYPE','CHAR_DATATY

我注意到結尾行缺少一些程式碼,並且我看到每個拋出的錯誤都會發生這種情況。為什麼聲明會這樣中斷?

這是一個已知的錯誤,它將在未來的版本中修復。

用於CTX_REPORT.CREATE_INDEX_SCRIPT生成索引腳本,並手動創建它們。

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