Oracleジョブ無効化・有効化

実践オラクルデータベース構築・運用

オラクルデータベース構築オラクルデータベース運用SQL書式PL/SQL書式Oracle Master試験

TOP オラクルデータベース運用 Oracleジョブ管理

Oracleジョブ無効化・有効化


スポンサードリンク



Oracleジョブ無効化・有効化


本項では、Oracleジョブ無効化・有効化手順について解説します。


ジョブの有効化
1つ以上のジョブを有効(使用可能)にするには、ENABLEプロシージャまたはEnterprise Managerを使用します。このプロシージャを使用すると、ジョブは、ジョブ・コーディネータによって取り出され、処理されるようになります。ジョブは、デフォルトで使用禁止で作成されるため、実行するには使用可能にする必要があります。ジョブを使用可能にすると、妥当性チェックが実行されます。チェックに失敗すると、ジョブは使用可能になりません。


ジョブの無効化
1つ以上のジョブを無効(使用禁止)にするには、DISABLEプロシージャまたはEnterprise Managerを使用します。ジョブは他の理由で使用禁止になる場合もあります。たとえば、ジョブが属しているジョブ・クラスが削除されると、ジョブは使用禁止になります。また、ジョブが指し示しているプログラムまたはスケジュールのいずれかが削除された場合も使用禁止になります。ジョブが指し示しているプログラムまたはスケジュールが使用禁止の場合は、そのジョブ自体は使用禁止にならないため、スケジューラがジョブを実行しようとしたときに、エラーとなることに注意してください。


<主なOracleジョブ操作一覧>
操作 プロシージャ 必要な権限
ジョブ作成
CREATE_JOBまたはCREATE_JOBS CREATE JOBまたはCREATE ANY JOB
ジョブ変更
SET_ATTRIBUTEまたはSET_JOB_ATTRIBUTES ALTERまたはCREATE ANY JOB、あるいは所有者
ジョブ停止
STOP_JOB ALTERまたはCREATE ANY JOB、あるいは所有者
ジョブ削除
DROP_JOB ALTERまたはCREATE ANY JOB、あるいは所有者
ジョブのコピー COPY_JOB ALTERまたはCREATE ANY JOB、あるいは所有者
ジョブの実行 RUN_JOB ALTERまたはCREATE ANY JOB、あるいは所有者


(1)ジョブ確認
「ORA_NEW_JOB1」ジョブの状態を確認します。ジョブが有効化されステータスが「SCHEDULED」となっており実行中であることを確認します。
SQL> set pages 1000
SQL> set line 100
SQL> column job_name format a30
SQL> select job_name,state from dba_scheduler_jobs where job_name='ORA_NEW_JOB1';

JOB_NAME                   STATE
------------------------------ -------------------------------------------------
ORA_NEW_JOB1               SCHEDULED



(2)ジョブ無効化
「ORA_NEW_JOB1」ジョブを無効化します。

SQL> BEGIN
DBMS_SCHEDULER.DISABLE('ORA_NEW_JOB1');
END;
/


PL/SQLプロシージャが正常に完了しました。

SQL>


(3)ジョブ確認
SQL> select job_name,state from dba_scheduler_jobs where job_name='ORA_NEW_JOB1';

JOB_NAME                   STATE
------------------------------ -------------------------------------------------
ORA_NEW_JOB1               DISABLE


ジョブが無効化されステータスが「DISABLE」に変更したことを確認します。


(4)ジョブ有効化
「ORA_NEW_JOB1」ジョブを有効化します。

SQL> BEGIN
DBMS_SCHEDULER.ENABLE('ORA_NEW_JOB1');
END;
/


PL/SQLプロシージャが正常に完了しました。

SQL>


(5)ジョブ確認
SQL> select job_name,state from dba_scheduler_jobs where job_name='ORA_NEW_JOB1';

JOB_NAME                   STATE
------------------------------ -------------------------------------------------
ORA_NEW_JOB1               SCHEDULED

ジョブが有効化されステータスが「SCHEDULED」に変更したことを確認します。



スポンサードリンク



    ◎-Oracleジョブのネーミングルール

    ◎-Oracleジョブ作成前準備(プログラム作成)

    ◎-Oracleジョブ作成前準備(スケジュール作成)

    ◎-Oracleジョブ作成

    ◎-Oracleジョブ変更

    ◎-Oracleジョブ停止

    ◎-Oracleジョブ削除

    ◎-Oracleジョブ無効化・有効化

    ◎-イベントを使用したOracleジョブの開始

    ◎-Oracleジョブチェーン作成

    ◎-Oracleジョブの優先度付け

    ◎-Oracleジョブの監視



スポンサードリンク

リンク集 / 免責事項サイトマップ問い合わせ
Copyright (C) 2012  実践オラクルデータベース構築・運用  All rights reserved