Autonomous Databaseへのデータのエクスポート
設定前提条件:
Autonomous Databaseにエクスポートされたデータに対してロード・パイプラインを設定および実行する前に、次の前提条件を満たしていることを確認してください:
- データベース・ユーザー権限の設定
Oracle Database Actions - SQLコンソールでロード・パイプライン・スクリプトを起動するユーザーがOCI管理者ではない場合、管理者は必要な実行権限を付与する必要があります。
GRANT EXECUTE ON DBMS_CLOUD_PIPELINE TO <user-name>; GRANT READ,WRITE ON DIRECTORY DATA_PUMP_DIR TO <user-name>; GRANT CREATE JOB TO <user-name>;
- リソース・プリンシパルの有効化
Oracle Database Actions - SQLコンソール内で、管理者として次のコマンドを実行してリソース・プリンシパルを有効にします:
EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL();
管理者以外のユーザーがパイプライン・スクリプトを管理者として実行する場合は、次のコマンドを実行して、そのユーザーのリソース・プリンシパルを有効にします。
EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => '<user-name>');
- ターゲットAutonomous Databaseの動的グループの作成
次の一致ルールを使用して動的グループを作成します:
ALL {resource.type = 'autonomousdatabase', resource.id = '<adb-ocid>'}
<adb-ocid>
は、データのロード先となるAutonomous DatabaseのOCIDです。 - オブジェクト・ストレージ・バケットへのリソース・プリンシパル・ポリシー・アクセス権の付与
ポリシーを作成して、Autonomous Databaseのリソース・プリンシパルにターゲット・オブジェクト・ストレージ・バケット内のファイルへのアクセス権を付与します。「ポリシー」フィールドに次のポリシーを作成します:
ALLOW DYNAMIC-GROUP <dynamic-group-name> TO READ objects IN compartment <compartment-name> where target.bucket.name='<export-bucket-name>'
ここでは:<export-bucket-name>
は、JMSフリート・データのエクスポート先のオブジェクト・ストレージの名前です。<compartment-name>
は、バケットが属するコンパートメントの名前です
ロード・パイプライン・スクリプトの取得
- 「フリート」ダッシュボードで、エクスポートしたデータをAutonomous Databaseにロードする必要があるフリートを選択します。
- 「データ・エクスポート設定」に移動して、Autonomous Databaseロード・パイプライン・スクリプトをダウンロードします。
パイプライン・スクリプトの実行
スクリプトの内容をコピーし、Oracle Database Actions - SQLコンソールで実行します。
パイプラインのロード・スクリプトは、次の4つの主要なタスクを実行します。
- 3つのエクスポート・リソースに対応する3つの表を作成します。表がすでに存在する場合、新しい表は作成されません。
- 管理対象インスタンス
- 管理対象インスタンスとJavaランタイム
- 管理対象インスタンス、Javaランタイムおよびアプリケーション
- 3つのパイプラインを作成して構成し、新しいCSVファイルのターゲット・オブジェクト・ストレージ・バケットを定期的にポーリングします。新しいファイルが検出されると、それらのファイルのデータが正しい表にロードされます。パイプラインがすでに存在する場合、新しいパイプラインは作成されません。
- 新しく作成したパイプラインを起動します。
- 週に1回実行されるスケジュール済ジョブを作成して有効化し、冗長エクスポート・データをチェックして削除します。
既存のパイプラインの監視と管理
すべてのアクティブなパイプライン・ジョブをモニターするには、「Oracle Database Actions」および「スケジューリング」に移動します。
Oracle Database Actions - SQLコンソール内で問合せを実行することもできます:
SELECT * FROM USER_CLOUD_PIPELINES WHERE PIPELINE_NAME LIKE 'JMS%'
実行される各ジョブの詳細は、ユーザーのクラウド名で識別される$STATUS
表および$LOG
表を参照してください。
パイプラインは、パイプラインの起動、停止、リセットまたは削除によって制御できます。詳細なステップは、コントロール・パイプラインを参照してください。