IMP-00017: ... ORACLE error 1:
"BEGIN dbms_job.isubmit(job=>1, what=>'esupport.P_TM_close2;', ...)
ORA-00001: unique constraint (SYS.I_JOB_JOB) violated
ORA-06512: at SYS.DBMS_JOB, line 97"
DBA_JOBS 中用戶 XXXX 佔用 JOB=1。SYSMAN 佔用 JOB=1 執行 EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS(Enterprise Manager 維護職務)。BEGIN
DBMS_JOB.ISUBMIT(
job => 23, -- 指定未使用的 ID
what => 'esupport.P_TM_close2;',
next_date => TO_DATE('4000-01-01:00:00:00','YYYY-MM-DD:HH24:MI:SS'),
interval => 'SYSDATE + 1/24',
no_parse => TRUE
);
END;
/
-- 驗證後可移除測試用 Job
BEGIN DBMS_JOB.REMOVE(23); END; /
在源庫 Export 前先 DBMS_JOB.REMOVE(1),避免匯出 Job 定義。
10g 引入 SYSMAN 自動佔用 Job ID=1 是遷移常見衝突點。掌握 DBMS_JOB.ISUBMIT 指定 ID 重建技巧,可快速解決而不影響 EM 功能。