這篇文章主要講解了“Oracle調(diào)度Schedule特性是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Oracle調(diào)度Schedule特性是什么”吧!
高淳ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
Job Classes 的概念,相當(dāng)于創(chuàng)建了一個job組,DBA可以將那些具有相同特性的job,統(tǒng)統(tǒng)放到相同的Job Classes中,
然后通過對Job Class應(yīng)用ORACE中的"資源使用計(jì)劃"特性,就可以對這些job執(zhí)行過程中所需要的資源分配情況進(jìn)行管理。
1、創(chuàng)建Job Classes
使用DBMS_SCHEDULER包的CREATE_JOB_CLASS過程創(chuàng)建Job Classes
begin
dbms_scheduler.create_job_class('myjobclass1');
end;
JOB_CLASS_NAME 要創(chuàng)建的Job Class的名稱,注意指定的長度不要超過30個字符,也不要與現(xiàn)有Job Class同名
RESOURCE_CONSUMER_GROUP 指定創(chuàng)建的Job Class所在的RCG(Resource Consumer Group)
你可以將其理解成一個資源分配的方式,處于相同RCG組中的用戶、會話、或者對象共用一組資源,這組資源中可供分配的資源按照DBA指定的方式分配給RCG。
如果設(shè)計(jì)合理,通過這種方式,可以更有效的利用服務(wù)器的資源。
SERVICE 指定創(chuàng)建的Job Class所在Service,本選項(xiàng)常見于RAC環(huán)境,我們都知道RAC環(huán)境由多實(shí)例+數(shù)據(jù)庫組成,此處所指定的Service實(shí)際就是指Job Class會在哪個實(shí)例上運(yùn)行。
注意:本參數(shù)與RESOURCE_CONSUMER_GROUP參數(shù)相互沖突,同一個Job Class只同設(shè)置兩個參數(shù)中的一個值。
LOGGING_LEVEL 指定日志記錄的級別,有下列三種級別
n DBMS_SCHEDULER.LOGGING_OFF :關(guān)閉日志記錄功能;
n DBMS_SCHEDULER.LOGGING_RUNS :對該Job Class下所有任務(wù)的運(yùn)行信息進(jìn)行記錄;
n DBMS_SCHEDULER.LOGGING_FULL :記錄該Job Class下任務(wù)的所有相關(guān)信息,不僅有任務(wù)的運(yùn)行情況,甚至連任務(wù)的創(chuàng)建、修改等也均將記入日志。
LOG_HISTORY :指定日志記錄的時間,以天為單位,比如指定LOG_HISTORY參數(shù)值為90,就表示日志信息保留最近90天的內(nèi)容。
COMMENTS指定注釋信息
上述各個參數(shù),除了LOG_CLASS_NAME參數(shù)為必選參外,其它均為可選參數(shù)
2、查詢系統(tǒng)中已經(jīng)存在的Job Classes,可以通過DBA_SCHEDULER_JOB_CLASSES視圖(或ALL_SCHEDULER_JOB_CLASS視圖),例如:
select job_class_name,resource_consumer_group,service from dba_scheduler_job_classes where job_class_name = 'MYJOBCLASS1';
JOB_CLASS_NAME RESOURCE_CONSUMER_GROUP SERVICE
------------------------------ ------------------------------ ------------------------------
MYJOBCLASS1
當(dāng)創(chuàng)建Jobs時,可以通過JOB_CLASS參數(shù)來指定job所在的Job Class,如果不指定的話,創(chuàng)建的job默認(rèn)屬于DEFAULT_JOB_CLASS。
至于說如何查詢創(chuàng)建的jobs屬于哪個Job Class,查詢*_SCHEDULER_JOBS視圖中。
3、管理Job Classes
DBMS_SCHEDULER.SET_ATTRIBUTE 過程大家應(yīng)當(dāng)還記的,前面的小節(jié)中演示中使用該過程,修改job的屬性,實(shí)際上SET_ATTRIBUTE也同樣可以用來修改Job Class的屬性,
操作方法與修改job屬性完全相同,只不過作用函概的范圍更廣,修改Job Class后,該Job Class下屬的所有job屬性都會被級聯(lián)修改(當(dāng)前正運(yùn)行的不會立刻生效,將等到下次運(yùn)行時生效)。
舉個例子:修改剛剛創(chuàng)建的MY_FIRST_JC的日志保存時間
begin
DBMS_SCHEDULER.SET_ATTRIBUTE('MYJOBCLASS1','LOG_HISTORY','30');
end;
Job Class可被修改的屬性,即創(chuàng)建時可選擇指定的那5個屬性。
4、 刪除Job Classes
DBMS_SCHEDULER 包提供了DROP_JOB_CLASS過程,用來刪除Job Classes。該過程調(diào)用非常簡單,例如,刪除剛剛創(chuàng)建的MYJOBCLASS1,執(zhí)行命令如下:
begin
DBMS_SCHEDULER.DROP_JOB_CLASS('MYJOBCLASS1');
end;
如果有多個Job Classes需要刪除,并不需要多次執(zhí)行DROP_JOB_CLASS,只需要在為該過程指定值時,參數(shù)值間以逗號分隔即可。
感謝各位的閱讀,以上就是“Oracle調(diào)度Schedule特性是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Oracle調(diào)度Schedule特性是什么這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!