Autonomous Databaseを使用したクラウド・コード・リポジトリでのファイルの管理および格納
Autonomous Databaseには、クラウド・コード(Git)リポジトリでファイルを管理および格納するためのルーチンが用意されています。サポートされているクラウド・コード・リポジトリは、GitHub、AWS CodeCommitおよびAzure Reposです。
- Autonomous Databaseを使用したクラウド・コード・リポジトリについて
DBMS_CLOUD_REPO
パッケージは、Autonomous Databaseからクラウド・コード・リポジトリにアクセスするための単一のインタフェースを提供します。 - クラウド・コード・リポジトリの初期化
DBMS_CLOUD_REPO
初期化ルーチンは、クラウド・コード・リポジトリを初期化します。クラウド・コード・リポジトリ・ハンドルを取得した後、そのハンドルを使用してクラウド・コード・リポジトリにアクセスします。 - クラウド・コード・リポジトリの作成と管理
DBMS_CLOUD_REPO
管理ルーチンを使用すると、リポジトリを作成、リスト、更新または削除することで、クラウド・コード・リポジトリを管理できます。 - クラウド・コード・リポジトリでのブランチの作成と管理
DBMS_CLOUD_REPO
管理ルーチンを使用すると、リポジトリ内のブランチを作成、リスト、マージまたは削除することで、クラウド・コード・リポジトリのブランチを管理できます。 - クラウド・コード・リポジトリ・ブランチへのスキーマ・オブジェクトのエクスポート
DBMS_CLOUD_REPO
管理ルーチンを使用すると、スキーマ内のオブジェクトのメタデータをクラウド・コード・リポジトリ・ブランチにエクスポートできます。オブジェクト名またはオブジェクト・タイプに基づいてリストをフィルタできます。 - クラウド・コード・リポジトリでのファイル操作の使用
DBMS_CLOUD_REPO
ファイル操作では、クラウド・コード・リポジトリ内のファイルを作成、取得、リスト、更新または削除できます。 - クラウド・コード・リポジトリでのSQLインストール操作の使用
DBMS_CLOUD_REPO
SQLインストール操作を使用すると、クラウド・コード・リポジトリからSQLスクリプトを格納およびダウンロードできます。
親トピック: 開発
Autonomous Databaseでのクラウド・コード・リポジトリについて
DBMS_CLOUD_REPO
パッケージは、Autonomous Databaseからクラウド・コード・リポジトリにアクセスするための単一のインタフェースを提供します。
サポートされているクラウド・コード・リポジトリには、次の機能があります。
-
Gitバージョン制御システム: Gitは、任意のファイル・セットの変更を追跡するためのソフトウェアで、通常はソフトウェア開発中にソース・コードを共同で開発するプログラマ間の作業を調整するために使用されます。その目標には、スピード、データの整合性、分散型非線形ワークフローのサポートが含まれます。
-
Gitリポジトリ: Gitリポジトリは、プロジェクトの仮想ストレージです。これにより、コードのバージョンを保存でき、必要に応じてアクセスできます。
DBMS_CLOUD_REPO
APIは、リポジトリ・ハンドル(REPO
オブジェクト)を使用します。リポジトリ・ハンドルは、特定のクラウド・プロバイダのクラウド・コード・リポジトリを表す不透明なJSONオブジェクトです。REPO
オブジェクトは、異なるDBMS_CLOUD_REPO
APIに渡すことができます。この不透明なオブジェクトは、DBMS_CLOUD_REPO
プロシージャおよびファンクションがマルチクラウド互換であることを保証します。クラウド・コード・リポジトリ・プロバイダから別のクラウド・コード・リポジトリに移行するときに、コードを変更する必要はありません。
-
リポジトリ初期化操作により、リポジトリを初期化できます。
詳細は、「クラウド・コード・リポジトリの初期化」を参照してください。
-
リポジトリを作成、リスト、更新または削除できるリポジトリ管理操作。
詳細は、クラウド・コード・リポジトリの作成および管理を参照してください。
-
リポジトリ内のブランチを作成、リスト、マージまたは削除できるリポジトリ・ブランチ管理操作。
詳細は、クラウド・コード・リポジトリでのブランチの作成および管理を参照してください。
-
スキーマ内のすべてのオブジェクトのメタデータDDLをリポジトリにエクスポートします。
詳細は、クラウド・コード・リポジトリ・ブランチへのスキーマ・オブジェクトのエクスポートを参照してください。
-
ファイルをアップロード、ダウンロード、更新および削除するためのリポジトリ・ファイル管理操作。
詳細は、クラウド・コード・リポジトリでのファイル操作の使用を参照してください。
-
データベース・オブジェクト・メタデータDDLをリポジトリにエクスポートし、クラウド・コード・リポジトリからデータベースにSQL文をインストールできるSQLインストール操作。
詳細は、クラウド・コード・リポジトリでのSQLインストール操作の使用を参照してください。
クラウド・コード・リポジトリの初期化
DBMS_CLOUD_REPO
初期化ルーチンは、クラウド・コード・リポジトリを初期化します。クラウド・コード・リポジトリ・ハンドルを取得した後、そのハンドルを使用してクラウド・コード・リポジトリにアクセスします。
クラウド・コード・リポジトリを初期化するには:
初期化関数の詳細は、DBMS_CLOUD_REPO初期化操作を参照してください。
クラウド・コード・リポジトリの作成と管理
DBMS_CLOUD_REPO
管理ルーチンを使用すると、リポジトリを作成、リスト、更新または削除することで、クラウド・コード・リポジトリを管理できます。
まず、クラウド・コード・リポジトリ・ハンドルを取得して、リポジトリへのアクセスを提供します。詳細は、クラウド・コード・リポジトリの初期化を参照してください。
詳細は、DBMS_CLOUD_REPOリポジトリ管理操作を参照してください。
クラウド・コード・リポジトリでのブランチの作成と管理
DBMS_CLOUD_REPO
管理ルーチンを使用すると、リポジトリ内のブランチを作成、リスト、マージまたは削除することで、クラウド・コード・リポジトリのブランチを管理できます。
クラウド・コード・リポジトリのブランチ管理操作を実行するには、まず次の操作を実行する必要があります。
-
資格証明を作成します。
詳細は、CREATE_CREDENTIALプロシージャを参照してください。
-
ハンドルを取得してください。
詳細は、クラウド・コード・リポジトリの初期化を参照してください。
-
リポジトリを作成します。
詳細は、クラウド・コード・リポジトリの作成および管理を参照してください。
-
ADMINユーザーとしてログインするか、
DBMS_CLOUD_REPO
に対するEXECUTE
権限を持ちます。
詳細は、DBMS_CLOUD_REPOリポジトリ・ブランチ管理操作を参照してください。
クラウド・コード・リポジトリ・ブランチへのスキーマ・オブジェクトのエクスポート
DBMS_CLOUD_REPO
管理ルーチンを使用すると、スキーマ内のオブジェクトのメタデータをクラウド・コード・リポジトリ・ブランチにエクスポートできます。オブジェクト名またはオブジェクト・タイプに基づいてリストをフィルタできます。
スキーマ・メタデータをエクスポートするには、最初に次の操作を行う必要があります。
-
資格証明を作成します。
詳細は、CREATE_CREDENTIALプロシージャを参照してください。
-
ハンドルを取得してください。
詳細は、クラウド・コード・リポジトリの初期化を参照してください。
-
リポジトリを作成します。
詳細は、クラウド・コード・リポジトリの作成および管理を参照してください。
-
ADMINユーザーとしてログインするか、
DBMS_CLOUD_REPO
に対するEXECUTE
権限を持ちます。
EXPORT_SCHEMA
プロシージャを使用して、スキーマ内のオブジェクトのメタデータをクラウド・コード・リポジトリ・ブランチにエクスポートします。
BEGIN
DBMS_CLOUD_REPO.EXPORT_SCHEMA
(
repo => l_repo,
schema_name => 'USER1',
file_path => 'myschema_ddl.sql'
filter_list =>
to_clob('[
{ "match_type":"equal",
"type":"table"
},
{ "match_type":"not_equal",
"type":"view"
},
{ "match_type":"in",
"type":"table",
"name": " ''EMPLOYEE_SALARY'',''EMPLOYEE_ADDRESS'' "
},
{ "match_type":"equal",
"type":"sequence",
"name": "EMPLOYEE_RECORD_SEQ"
},
{ "match_type":"like",
"type":"table",
"name": "%OFFICE%"
}
]'
);
);
END;
/
この例では、USER1
スキーマのメタデータをl_repo
リポジトリにエクスポートします。エクスポートには、表EMPLOYEE_SALARY
およびEMPLOYEE_ADDRESS
のメタデータと、OFFICE
を含む表名が含まれます。また、EMPLOYEE_RECORD_SEQ
順序をエクスポートし、スキーマ内のビューを除外します。
クラウド・コード・リポジトリでのファイル操作の使用
DBMS_CLOUD_REPO
ファイル操作を使用すると、クラウド・コード・リポジトリ内のファイルを作成、取得、リスト、更新または削除できます。
ファイル操作を使用する前に、クラウド・コード・リポジトリ・ハンドルを取得します。詳細は、クラウド・コード・リポジトリの初期化を参照してください。
また、ファイルを操作する前にリポジトリを作成する必要があります。詳細は、クラウド・コード・リポジトリの作成および管理を参照してください。
詳細は、DBMS_CLOUD_REPOファイル操作を参照してください。
クラウド・コード・リポジトリでのSQLインストール操作の使用
DBMS_CLOUD_REPO
SQLインストール操作では、クラウド・コード・リポジトリからSQLスクリプトを格納およびダウンロードできます。
SQLインストール操作を使用する前に、クラウド・コード・リポジトリ・ハンドルを取得します。詳細は、クラウド・コード・リポジトリの初期化を参照してください。
また、SQLインストール操作を実行する前に、リポジトリを作成する必要があります。詳細は、クラウド・コード・リポジトリの作成および管理を参照してください。
スクリプトは、汎用SQLスクリプトではなくスキーマ・インストール・スクリプトを意図しています。
- スクリプトにSQL*Plusクライアント固有のコマンドを含めることはできません。
- スクリプトにバインド変数またはパラメータ化されたスクリプトを含めることはできません。
- SQL文は、新しい行(/)でスラッシュで終了する必要があります。
- スクリプトにはDDL文、DML PLSQL文を含めることができますが、直接
SELECT
文はサポートされていません。PL/SQLブロック内でのSELECTの使用がサポートされています。
EXECUTE IMMEDIATE
を使用して実行できるSQL文は、バインド変数または定義が含まれていない場合に機能します。
詳細は、DBMS_CLOUD_REPO SQLインストール操作を参照してください。