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 File Operationsを参照してください。
クラウド・コード・リポジトリでの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インストール操作を参照してください。