関連パラメータ job_queue_processes を初期化します
alter system set job_queue_processes=39scope=spfile; //最大値は 1000 を超えることはできません //ジョブの更新頻度を秒単位でスケジュールします。
job_queue_process は、Oracle が同時に実行できるジョブの数を表し、ステートメントを介して渡すことができます。
パラメータ job_queue_process を表示します。
oracle で job_queue_process の値を表示するには。 job_queue_process 値が 0 の場合、すべての Oracle ジョブを停止することを意味します。このステートメントを渡すことができます。
ALTER SYSTEM SET job_queue_processes = 10;
Oracle を起動するジョブを調整します。
関連ビュー:
dba_jobs
すべてのジョブ
ユーザージョブ
dba_jobs_running には、実行中のジョブに関する情報が含まれます
------------------------
ジョブを送信する構文:
始める
sys.dbms_job.submit(ジョブ => :ジョブ,
何を => 'P_CLEAR_PACKBAL;',
next_date => to_date('04-08-2008 05:44:09', 'dd-mm-yyyy hh24:mi:ss'),
間隔 => 'sysdate+ 1/360');
専念;
終わり;
/
------------------------
ジョブの作成
変数ジョブ番号番号。
始める
dbms_job.submit(:jobno, 'P_CRED_PLAN;',SYSDATE,'SYSDATE+1/2880',TRUE);
専念;
ジョブの実行
SQL> 開始
dbms_job.run(:job1);
終わり;
/
ジョブの削除
SQL> 開始
dbms_job.remove(:job1);
終わり;
/
DBA_JOBS
=========================================
フィールド (列) タイプ 説明
JOB NUMBER タスクの一意の識別番号
LOG_USER VARCHAR2(30) タスクを送信したユーザー
PRIV_USER VARCHAR2(30) ユーザー割り当てタスク権限
SCHEMA_USER VARCHAR2(30) タスクを解析するためのユーザー モード
LAST_DATE DATE タスクが最後に正常に実行された時刻
LAST_SEC VARCHAR2(8) HH24:MM:SS 形式の last_date 日付の時、分、秒
THIS_DATE DATE 実行中のタスクの開始時刻、または実行中のタスクがない場合は null
THIS_SEC VARCHAR2(8) HH24:MM:SS 形式の this_date 日付の時、分、秒
NEXT_DATE DATE スケジュールされたタスクが次回実行される時刻
NEXT_SEC VARCHAR2(8) HH24:MM:SS 形式の next_date 日付の時、分、秒
TOTAL_TIME NUMBER タスクの実行に必要な合計時間 (秒単位)
BROKEN VARCHAR2(1) フラグ パラメーター、Y はタスクが中断され、今後実行されないことを示します。
INTERVAL VARCHAR2(200) 次回の実行時間を計算するために使用される式
FAILURES NUMBER タスクが正常に実行されなかった回数。
WHAT VARCHAR2(2000) タスクを実行するPL/SQLブロック
CURRENT_SESSION_LABEL RAW MLSLABEL このタスクの信頼できる Oracle セッション キー
CLEARANCE_HI RAW MLSLABEL タスクが信頼できる Oracle ギャップの最大値
CLEARANCE_LO RAW MLSLABEL タスクが信頼できる Oracle の最小ギャップ
NLS_ENV VARCHAR2(2000) タスク実行のための NLS セッション設定
MISC_ENV RAW(32) タスク実行用のその他のセッション パラメータ
-------------------------
説明 INTERVAL パラメータ値
毎日午前 12 時に「TRUNC(SYSDATE + 1)」
毎朝 8:30 'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)'
毎週火曜日正午 'NEXT_DAY(TRUNC(SYSDATE ), ''TUESDAY'' ) + 12/24'
'TRUNC(LAST_DAY(SYSDATE ) + 1)' 毎月 1 日の午前 12 時
各四半期の最終日の午後 11 時 'TRUNC(ADD_MONTHS(SYSDATE + 2/24, 3 ), 'Q' ) -1/24'
毎週土曜日と日曜日の午前 6 時 10 分 'TRUNC(LEAST(NEXT_DAY(SYSDATE, ''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6×60+10)/(24×60)'
-------------------------
1: 1分ごとに実行
間隔 => TRUNC(sysdate,'mi') + 1/ (24*60)
2: 毎日定期的に実行する
例: 毎日午前 1 時に実行されます
間隔 => TRUNC(sysdate) + 1 +1/ (24)
3: 毎週のスケジュール実行
例: 毎週月曜日の午前 1 時に実行されます
間隔 => TRUNC(next_day(sysdate,'Monday'))+1/24
4:毎月定期実行
例: 毎月 1 日の午前 1 時に実行します。
間隔 =>TRUNC(LAST_DAY(SYSDATE))+1+1/24
5: 四半期ごとの定期実行
たとえば、各四半期の初日の午前 1 時に実行されます。
間隔 => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24
6: 半年ごとの定期実行
例: 毎年 7 月 1 日と 1 月 1 日の午前 1 時
間隔 => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24
7:毎年定期的に実施
例:毎年1月1日午前1時に実行
間隔 =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24
この記事は CSDN ブログからのものです。転載する場合は出典を明記してください: http://blog.csdn.net/mzwang123/archive/2009/12/22/5053476.aspx
-