全面學習ORACLE Scheduler特性(5)Schedules排程Programs執行的Jobs
3.2 Schedules排程Programs執行的Jobs
通過schedule排程program的執行的job,看到這樣的形容是不是讓你徹底暈頭了,就說明你還是沒搞明白10g中SCHEDULERS特性管理的jobs的含意,讓三思更直白地給你描述描述。10g版本中SCHEDULER將JOB分成了多個部分,program負責做什麼,schedule負責啥時候做,job就簡單了,一個字:做。
前面幾個小節,三思已經分別演示了建立管理Jobs,建立管理Programs以及建立和管理Schedules,下面我們通過例項來演示,如何建立通過schedule排程program的執行的job吧。
首先,建立一個program,操作如下:
SQL> BEGIN
2 DBMS_SCHEDULER.CREATE_PROGRAM (
3 program_name => 'my_program1',
4 program_action => '/bin/date',
5 program_type => 'EXECUTABLE',
6 enabled => TRUE);
7 END;
8 /
PL/SQL procedure successfully completed.通過上述語句,我們定義了一個program,執行作業系統命令date,並輸入到dt.log檔案中。
接下來定義一個schedule,操作如下:
SQL> begin
2 DBMS_SCHEDULER.CREATE_SCHEDULE (
3 schedule_name => 'my_first_schedule',
4 start_date => SYSDATE,
5 repeat_interval => 'FREQ= DAILY ; INTERVAL=1',
6 comments => 'Every 1 weeks');
7 END;
8 /
PL/SQL procedure successfully completed.定義除錯為每週執行一次。此處repeat_interval可根據實現情況進行修改。
最後,建立job,按照指定的schedule,執行program,操作如下:
SQL> BEGIN
2 DBMS_SCHEDULER.CREATE_JOB (
3 job_name => 'execOScmd',
4 program_name => 'my_program1',
5 schedule_name => 'my_first_schedule',
6 enabled => true);
7 END;
8 /
PL/SQL procedure successfully completed.建立job時,start_date,repeat_interval,job_action等均無須指定,因為這些引數將由program和schedule來控制。
這樣,操作完成後,ORACLE就會自動定時(當前設定為每週執行一次)program中定義的操作。
要檢視當前的執行情況,通過*_scheduler_job_run_details即可查詢(*_scheduler_job_log也可以,不過該檢視中資訊不如detail中全面)。例如,檢視剛剛建立的"EXECOSCMD"任務的執行情況,執行命令如下:
SQL> select log_id, log_date, status, additional_info
2 from user_scheduler_job_run_details
3 where job_name = 'EXECOSCMD'
4 ;
LOG_ID LOG_DATE STATUS ADDITIONAL_INFO
---------- -------------------- ---------- ------------------------------
13760 17-AUG-09 02.47.53.7 SUCCEEDED
34050 PM +08:00看完這個示例之後,你是否對10g中的SCHEDULER特性多了些瞭解呢?千萬表自滿,SCHEDULER特性的功能還多著哪,接著往下看吧。
=======================================
全面學習ORACLE Scheduler特性(4)建立和管理Schedule
全面學習ORACLE Scheduler特性(3)使用Programs
全面學習ORACLE Scheduler特性(2)管理jobs
全面學習ORACLE Scheduler特性(1)建立jobs
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-612496/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 全面學習ORACLE Scheduler特性(5) Schedules排程Programs執行的JobsOracle
- 全面學習ORACLE Scheduler特性(3)使用ProgramsOracle
- 全面學習ORACLE Scheduler特性(1)建立jobsOracle
- 全面學習ORACLE Scheduler特性(2)管理jobsOracle
- 全面學習ORACLE Scheduler特性(7)Scheduler丟擲的EventsOracle
- 全面學習ORACLE Scheduler特性(9)建立ChainsOracleAI
- 全面學習ORACLE Scheduler特性(10)管理ChainsOracleAI
- 全面學習ORACLE Scheduler特性(11)使用Job ClassesOracle
- 全面學習ORACLE Scheduler特性(7)使用Events之Scheduler丟擲的EventsOracle
- 全面學習ORACLE Scheduler特性(4)建立和管理ScheduleOracle
- 全面學習ORACLE Scheduler特性(8)Application丟擲的EventsOracleAPP
- oracle snapshot standby資料庫的scheduler jobs不執行Oracle資料庫
- 全面學習ORACLE Scheduler特性(6)設定Repeat Interval引數Oracle
- 全面學習ORACLE Scheduler特性(12)使用Windows和Window GroupsOracleWindows
- 全面學習ORACLE Scheduler特性(8)使用Events之Application丟擲的EventsOracleAPP
- RxJava原始碼解析(二)—執行緒排程器SchedulerRxJava原始碼執行緒
- Golang原始碼學習:排程邏輯(三)工作執行緒的執行流程與排程迴圈Golang原始碼執行緒
- oracle排程程式作業dbms_schedulerOracle
- oracle使用DBMS_SCHEDULER排程作業Oracle
- Oracle 排程程式作業( dbms_scheduler )Oracle
- goroutine 排程器(scheduler)Go
- [轉載] 全面學習和應用ORACLE ASM特性(4),(5)OracleASM
- Pod的排程是由排程器(kube-scheduler)
- 【JOB】Oracle JOB全面學習(DBMS_JOB和DBMS_SCHEDULER)Oracle
- 全面學習和應用ORACLE ASM特性OracleASM
- Oracle任務排程工具學習Oracle
- 全面學習和應用ORACLE ASM特性--(5)管理asm磁碟中的檔案OracleASM
- 【MySQL】事件排程器 (Event Scheduler)MySql事件
- Java執行緒的排程Java執行緒
- CCAH-CCA-500-5題:How will the Fair Scheduler handle these two jobs?AI
- 全面學習oracle flashback特性(3.2)--Flashback Database操作示例OracleDatabase
- 全面學習oracle flashback特性(2.1)--Flashback Table之RECYCLEBINOracle
- Android非同步框架RxJava 1.x系列(三) - 執行緒排程器SchedulerAndroid非同步框架RxJava執行緒
- JavaEE進階知識學習----多執行緒JUC高階知識-5-執行緒池-Callable-執行緒排程Java執行緒
- Oracle Scheduler學習筆記分享Oracle筆記
- 程序中的執行緒排程執行緒
- 【I/O scheduler】Linux的磁碟排程策略Linux
- Crane-scheduler:基於真實負載進行排程負載