手動重建 Oracle 11g Enterprise Manager (EM) 儲存庫時,emca -config dbcontrol db -repos recreate 過程中噴出:
WARNING: ORA-00001: unique constraint (SYSMAN.PARAMETERS_PRIMARY_KEY) violated
ORA-06512: at "SYSMAN.EMD_LOADER", line 4986
Drop Repository 階段未完全清除 SYSMAN 物件,導致 Create Repository 時主鍵衝突。Metalink 文檔 (Doc ID 1367997.1) 指出此為已知 Bug,需手動清理殘留物件。
emctl stop dbconsole
DROP USER sysman CASCADE;
DROP PUBLIC SYNONYM SETEMVIEW;
DROP PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
DROP ROLE MGMT_USER;
DROP PUBLIC SYNONYM MGMT_VERSIONS_ROOT;
DROP TABLESPACE MGMT_TABLESPACE INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;DROP TABLESPACE MGMT_ECM_DEPOT_TS INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
emca -config dbcontrol db -repos create
EMCA 成功完成,emctl status dbconsole 顯示運行中,瀏覽器存取 https://host:1158/em 正常。
$ORACLE_HOME/hostname_sid/sysman/config/emd.properties。記住:Drop 不乾淨,Create 必報錯,徹底清理是關鍵。