oracle定時任務(wù)定時無效的原因分析與解決
創(chuàng)建oracle定時任務(wù)定時任務(wù)并沒有按時執(zhí)行
由于項目需要同步其他系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫,在創(chuàng)建完dblink,存儲過程后,新建了一個dbm_job任務(wù),滿心期待的可以早點下班時,卻發(fā)現(xiàn)定時任務(wù)并沒有按照時間執(zhí)行。
創(chuàng)建定時任務(wù)JOB(63)定時任務(wù)并沒有執(zhí)行

原因分析:
可能數(shù)據(jù)庫對于JOB的功能并沒有開啟,于是引著這個方向去尋找解決方法。
解決方案:
通過查閱資料發(fā)現(xiàn)原來有一個參數(shù)job_queue_processes數(shù)字為0是定時任務(wù)都不會執(zhí)行,查詢的sql如下:
select value from v$parameter where name like '%job_queue_processes%';
修改參數(shù)job_queue_processes 大于0,我這兒設(shè)置為了10(大家可以適當(dāng)調(diào)大一些)
alter system set job_queue_processes =10;
再次重新測試:

補充:參數(shù)job_queue_processes貌似是定時任務(wù)隊列進(jìn)程,查了資料補上如下:
1、job_queue_processes取值范圍為0到1000,總共可創(chuàng)建多少個job進(jìn)程由job_queue_processes參數(shù)來決定。
2、當(dāng)job_queue_processes大于1時,且并行執(zhí)行job時,至少一個為協(xié)調(diào)進(jìn)程。其總數(shù)不會超出job_queue_processes的值。
3、job_queue_processes參數(shù)的值為且DBMS_JOB與DBMS_SCHEDULER共享。
4、job_queue_processes參數(shù),當(dāng)設(shè)定該值為0的時候則任意方式創(chuàng)建的job都不會運行。
5、非零值的job_queue_processes,其job子進(jìn)程數(shù)依賴于可用資源,資源配置方式以及當(dāng)前運行的job數(shù)來自行調(diào)整。
6、此外對于Scheduler jobs方式還受限制于scheduler屬性MAX_JOB_SLAVE_PROCESSES的設(shè)置。
7、可以通過DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE來設(shè)置max_job_slave_processes
以上!
總結(jié)
到此這篇關(guān)于oracle定時任務(wù)定時無效的原因分析與解決的文章就介紹到這了,更多相關(guān)oracle定時任務(wù)無效內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Oracle中實現(xiàn)行列互轉(zhuǎn)的方法分享
這篇文章主要為大家總結(jié)了Oracle中實現(xiàn)行列互轉(zhuǎn)的簡單方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06
ORACLE 數(shù)據(jù)庫RMAN備份恢復(fù)
還原不同位置的數(shù)據(jù)庫2009-04-04
Oracle數(shù)據(jù)庫及應(yīng)用程序優(yōu)化開發(fā)者網(wǎng)絡(luò)Oracle
Oracle數(shù)據(jù)庫及應(yīng)用程序優(yōu)化開發(fā)者網(wǎng)絡(luò)Oracle...2007-03-03
使用Oracle進(jìn)行數(shù)據(jù)庫備份與還原
這篇文章詳細(xì)介紹了使用Oracle進(jìn)行數(shù)據(jù)庫備份與還原,本文通過示例代碼講解的非常詳細(xì),有一定的參考價值,感興趣的同學(xué)可以參考閱讀2023-04-04

