スケジューラによるタスクの自動化
- スケジューラのコンポーネント
- プログラム:実際に働く人(実行可能ファイル、ストアドプロシージャ、PL/SQLブロックも指定可)
- ジョブ:(引数の)プログラムを(引数の)指定時刻になったら実行する人
- ジョブクラス:ジョブのカテゴライズ。リソースコンシューマグループと結び付けられる
- スケジュール:実行間隔(2時間に1回 等)に名前をつけたもの
- ウィンドウ:時間枠(0:00〜6:00 等)に名前をつけたもの。スケジュールと結びつくと、ウィンドウがOPENのときのみスケジュールが有効になる。さらに、リソースプラントも結び付けられる。ややこしや。
- ウィンドウ・グループ:複数のウィンドウをまとめたもの。NIGHTウィンドウとWEEKENDウィンドウをまとめてMAINTENANCEウィンドウグループにするみたいに。
- スケジューラ関係をいじるのに必要な権限
- プログラム、ジョブ、スケジュール:作った人のもの(CREATE JOB権限が必要)
- ジョブクラス、ウィンドウ、ウィンドウグループ:SYSスキーマ(MANAGE SCHEDULER権限またはSCHEDULER_ADMINロールを付与して)
- スケジューラで使えるカレンダ式
- FREQ=MONTHLY;BYDAY=2FRI 毎月第2週金曜日(こういう細かい設定はEMでは不可能)
- ロギング設定(ジョブまたはジョブクラス)
- 有効/無効が設定できるもの
- プログラム
- ウィンドウ
- ウィンドウ・グループ
- ジョブ
- DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTEプロシージャ
- ジョブログのパージ
- ジョブログの確認
- DBA_SCHEDULER_JOB_LOG
- DBA_SCHEDULER_JOB_RUN_DETAILS(実行時間はこっち)
- その他スケジューラ関連
- DBA_SCHEDULER_JOBS:作成済みのジョブオブジェクトに関する定義情報
- DBA_SCHEDULER_SCHEDULES:作成済みのスケジュールオブジェクトに関する定義情報