2011-12-14 60 views
1

我寫過一個程序和一份工作。 從工作我正在運行程序。以下爲創造就業爲什麼DBMS_Scheduler作業失敗?

DBMS_SCHEDULER.create_job (job_name => 'IBPROD2.RUN_FETCH_ACCT_ALERTS', 
job_type  => 'STORED_PROCEDURE', 
job_action  => 'FETCH_ACCT_ALERTS', 
start_date  => sysdate, 
repeat_interval => 'FREQ=HOURLY;INTERVAL=2;', 
enabled   => TRUE, 
auto_drop  => FALSE 
); 

創造就業我運行下面的命令來獲得業主IBPROD2工作的細節,我可以看到FAILURE_COUNT列值1 RUN_FETCH_ACCT_ALERTS作業後腳本。 手動運行時,程序FETCH_ACCT_ALERTS中沒有問題。

任何人都可以幫我解釋爲什麼這項工作失敗了嗎?我錯過了什麼嗎?

回答

8

查詢ALL_SCHEDULER_JOB_RUN_DETAILS視圖(或者DBA等價物)。

select * 
from all_scheduler_job_run_details 
where job_name = 'IBPROD2.RUN_FETCH_ACCT_ALERTS' 

你會在error#這將給你你可以看一下Oracle錯誤數量特別感興趣。此外,additional_info列可能還有一些其他信息。


的錯誤代碼的含義this:沒有代理提供客戶端用戶名
原因:

ORA-28179沒有用戶名是通過在客戶端用戶代理用戶提供。
操作:指定客戶端數據庫用戶名,專有名稱或X.509證書。

因此,這與您的安全設置有關。驗證失敗的原因。由於我對你的架構缺乏詳細的瞭解(而且我不是安全專家),所以我無法幫助你。

因爲我已經創建了許多作業來運行具有相同所有者的不同過程 。所有的都運行成功。

那麼在這個程序有什麼不同呢?

+0

感謝您的回覆。錯誤代碼是ORA-28179:未由代理提供的客戶端用戶名。但我不知道如何解決它。你有什麼主意嗎?因爲我已經創建了很多工作來與相同的所有者運行不同的過程。所有的都運行成功。 – Priya 2011-12-14 11:29:46