ジョブの作成

単一の管理対象データベースまたはデータベース・グループに対して管理操作を実行するSQLジョブを作成できます。

ジョブの作成時に提供される情報は、次のコンポーネントに接続して対話できるようにするためのものです:

  • ジョブが実行される単一の管理対象データベースまたはデータベース・グループ。
  • 外部データベースの場合、ホストにインストールされ、外部データベースに接続されたOracle Cloud Infrastructure管理エージェントがジョブの実行に使用されます。
    ノート

    Oracle CloudデータベースおよびAutonomous Databasesの場合、管理エージェントは必要ありません。
  • 「問合せ」タイプのジョブのジョブ結果が格納されるOracle Cloud Infrastructureオブジェクト・ストレージ・バケット。

ジョブを作成するには:

  1. 管理対象データベースの「管理対象データベースの詳細」ページ、またはジョブを作成するデータベース・グループの「データベース・グループの詳細」ページに移動します。
  2. 左側のペインの「リソース」で、「ジョブ」をクリックします。
  3. 「ジョブ」セクションで、「定義」タブをクリックし、「ジョブの作成」をクリックします。
  4. 「ジョブの作成」パネルで:
    1. SQLジョブについて次の情報を指定します:
      1. ジョブ名: ジョブの一意の名前を入力します。
      2. ジョブの説明: オプションで、ジョブの説明を入力します。
      3. SQLタイプ: SQLタイプを選択します。使用可能なオプションは次のとおりです:
        • 問合せ
        • DML
        • DDL
        • PL*SQL
      4. コンパートメントの選択: ジョブを作成するコンパートメントを選択します。デフォルトでは、管理対象データベースまたはデータベース・グループが存在するコンパートメントが選択されますが、別のコンパートメントにジョブを作成することも選択できます。
      5. タイムアウト: SQLジョブにかかる可能性のある時間に応じて、ドロップダウン・リストからいずれかのオプションを選択します。選択したオプションに基づいて、ジョブの優先度が決定されます。
    2. 次のいずれかのオプションを選択して、ジョブのスケジュール詳細を指定します:
      • 1回(即時): ジョブを1回(即時)実行する場合に選択します。
      • 1回(後で): ジョブを1回(後で)実行し、その実行時刻を指定する場合に選択します。
      • 繰返し: 指定した頻度でジョブを複数回実行する場合に選択します。スケジュール済ジョブの終了日を指定する場合は、「終了日の定義」チェック・ボックスを選択する必要があります。
    3. 「資格証明タイプ」ドロップダウン・リストで使用可能なオプションの1つを選択して、管理対象データベースに接続するためのデータベース資格証明を指定します。資格証明タイプの詳細は、資格証明を使用した診断および管理タスクの実行を参照してください。
      ノート

      • データベース・グループのジョブを作成する場合は、名前付き資格証明を使用できないため、「資格証明タイプ」ドロップダウン・リストで「新規資格証明」オプションを選択し、ユーザー名、ユーザー・パスワード・シークレットおよびロールを指定する必要があります。また、データベース・グループに対するジョブを作成する場合、データベース資格証明をデータベース・グループ内のすべてのデータベースに適用する必要があります。
      • スケジュール済ジョブの作成(1回または複数回実行)時に、「サービス・ポリシーが必要...」メッセージが表示された場合は、「ポリシーの追加」をクリックして、データベース管理(dpd)にシークレットを読み取る権限を付与するサービス・ポリシーを表示し、自動的に追加します。Oracle Cloud Infrastructure IAMサービスによってポリシーが作成され、IAMサービスのDBMgmt_Service_Policyというポリシーのコレクションに追加されます。
    4. 「問合せ」タイプのジョブの場合、ジョブ結果が格納されるオブジェクト・ストレージ・バケットを選択します。「バケット名」ドロップダウン・リストを含む「ジョブ結果用のOracleオブジェクト・ストレージ」セクションは、「問合せ」タイプのジョブを選択した場合にのみ表示されます。オブジェクト・ストレージ・バケットは、ジョブと同じコンパートメントにも、別のコンパートメントにも配置できます。バケットを選択するには、必要なオブジェクト・ストレージ・サービス権限を持っている必要があります。

      スケジュール済ジョブの作成(1回または複数回実行)時に、「サービス・ポリシーが必要...」メッセージが表示された場合は、「ポリシーの追加」をクリックして、スケジュール済ジョブの結果をオブジェクト・ストレージ・バケットに書き込む権限をデータベース管理(dpd)に付与するサービス・ポリシーを表示し、自動的に追加します。IAMサービスによってポリシーが作成され、IAMサービスのDBMgmt_Service_Policyというポリシーのコレクションに追加されます。

      詳細は、次を参照してください:

    5. 「SQLのロード」をクリックしてSQLコマンドをロードするか、「SQLコマンド」フィールドに入力します。SQLコマンドを入力する場合は、後続の;/を追加しないでください。
    6. 「問合せ」DMLおよびPL*SQLタイプのジョブでは、オプションで「バインド変数」セクションにバインド変数を追加します。バインド変数をプレースホルダとして使用し、文を正常に実行するために有効な値に置き換える必要がある場合は、「バインド変数の追加」をクリックして、次の情報を指定します:
      1. 位置: バインド変数の位置を選択します。
      2. タイプ: バインド変数がバインド内変数かバインド外変数かを指定するタイプを選択します。
      3. データ型: 関連するデータ型を選択します。
      4. 配列タイプ: 数値の配列および文字列の配列データ型の配列タイプを入力します。「データ型」フィールドで「数値」「文字列」または「CLOB」を選択した場合、このフィールドは表示されません。
      5. : バインド変数値を入力します。

      さらにバインド変数値を追加するには、「バインド変数の追加」をクリックし、必要な情報を指定します。バインド変数の詳細は、『Oracle Database SQLチューニング・ガイド』変数およびカーソルのバインドを参照してください。

    7. オプションで、「拡張オプションの表示」をクリックして、フリーフォームまたは定義済のタグをジョブに追加します。ジョブの作成に必要な権限がある場合は、フリーフォーム・タグを追加する権限もあります。定義済タグを追加するには、タグ・ネームスペースを使用する権限が必要です。

      詳細は、次を参照してください:

    8. 「ジョブの作成」をクリックします。
新しいジョブは、管理対象データベースまたはデータベース・グループの「定義」タブの「ジョブ」セクションにリストされます。ジョブが実行中の場合、ジョブのステータスは「アクティブ」であり、すでに実行されている場合は「非アクティブ」です。

ジョブのアクション・アイコン(アクション)をクリックし、次のタスクを実行できます:

  • 詳細の表示: クリックして「ジョブ詳細」ページに移動し、ジョブ、ジョブの実行と実行処理、ジョブが実行される関連付けられた管理対象データベース、およびタグ関連タスクを実行します。詳細は、ジョブの実行および実行処理のモニターを参照してください。
  • ジョブのクローニング: ジョブをクローニングする場合にクリックします。
  • ジョブの編集: 「アクティブ」状態のスケジュール済繰返しジョブの詳細を編集する場合にクリックします。
  • ジョブの移動: 現在のコンパートメントから別のコンパートメントにジョブを移動する場合にクリックします。
  • ジョブの削除: ジョブを削除する場合にクリックします。

「実行」タブの「ジョブ」セクションに、関連付けられた実行および実行処理を表示できます。「期間」フィールドで選択した期間のジョブ実行が、ジョブ実行処理のステータスの概要(「成功」「失敗」および「進行中」)とともに表示されます。実行処理ステータスのリンクをクリックすると、実行処理をステータスでフィルタできます。

dbmgmtJobExecutionsCountメトリックを使用して、Oracle Cloud Infrastructure Monitoringサービスのジョブ実行ステータスでメトリック問合せを作成し、アラームを作成できます。詳細は、Oracle Databasesのデータベース管理メトリックを参照してください。

失敗したジョブ・アラームの作成に使用できる問合せの例を次に示します:

dbmgmtJobExecutionsCount[1m]{managedDbId = "<OCID of the Oracle Database>", status = "Failed"}.mean()

問合せでは、managedDbIdディメンションを使用して、問合せでOCIDが指定されている管理対象データベースの失敗したジョブを通知します。同様に、次のディメンションを使用できます。

  • managedDbGroupId: データベース・グループ内のすべての管理対象データベースの失敗したジョブについて通知します。
  • jobId: 特定のジョブが失敗した場合に通知されます。

アラームの作成方法の詳細は、基本アラームの作成を参照してください。