トランスポータブル表領域を使用したデータの変換
トランスポータブル表領域では、データおよびメタデータを含む表領域をソース・データベースからターゲット・データベースに移動することで、完全なデータ・エクスポートおよびインポートを必要とせずに、大量のデータを効率的に移行できます。
- トランスポータブル表領域について
トランスポータブル表領域は、データベース間で大量のデータを迅速かつ効率的に移動できるOracle Databaseの機能です。 - 前提条件
データベース間で表領域を転送するための前提条件をリストします。 - トランスポータブル表領域を使用した移行ワークフロー
この項では、非自律型AIデータベースから自律型AIデータベースへのトランスポータブル表領域の移行を実行するステップについて説明します。 - ソース・データベース・ホスト環境の準備
トランスポータブル表領域操作を実行する前に環境を設定するために必要なステップについて説明します。 - ソース・データベースでの表領域バックアップの実行: ステップと例
次のタスクのリストでは、表領域のトランスポート処理の概要を示します。各タスクの詳細は、後続の例で示します。 - Autonomous AI Databaseへの表領域の転送
トランスポータブル表領域を使用してAutonomous AI Databaseにデータを移行する方法について説明します。 - トランスポータブル表領域に対する制限事項
トランスポータブル表領域に対する制限事項が表示されます。
親トピック: Autonomous AI Databaseへの移行
トランスポータブル表領域について
トランスポータブル表領域は、データベース間で大量のデータを迅速かつ効率的に移動できるOracle Databaseの機能です。
Autonomous AI Databaseとともにトランスポータブル表領域を使用すると、プラットフォーム間でも、オンプレミスOracle DatabaseやOracle Database Cloud Service (DBCS)インスタンスなどの非Autonomous AI Databaseからユーザー管理表領域全体を転送することで、大規模なデータ・セットを効率的に移動できます。個々のオブジェクトのかわりに完全な表領域を移行すると、移行時間が短縮され、オブジェクト・レベルのエクスポートおよびインポートと比較して停止時間が最小化されます。この機能は、データ・ウェアハウスの移行、履歴データのアーカイブおよびデータベースのアップグレードに特に役立ちます。
トランスポータブル表領域では、Transparent Data Encryption (TDE)ウォレットの管理など、暗号化表領域と非暗号化表領域の両方がサポートされます(該当する場合)。Autonomous AI Databaseではbigfile表領域のみがサポートされているため、トランスポート操作中にソースからのスモールファイル表領域が自動的にbigfile表領域に変換されます。
-
クロス・プラットフォームの移植性により、柔軟なデータ移動を実現
-
従来のエクスポートおよびインポートよりも移行が高速で、ダウンタイムも短縮されます。
-
本番環境の合理化を維持するためのデータ・アーカイブのサポート。
-
組込みの検証、正しいメタデータ処理およびセキュアなTDEウォレット処理によるセキュリティと整合性。
親トピック: トランスポータブル表領域を使用したデータの移行
前提条件
データベース間で表領域を転送するための前提条件をリストします。
-
ソース・データベースが実行されているホストにステージング・ディレクトリを作成します。このディレクトリを使用して、トランスポータブル表領域バックアップ・ユーティリティと関連ファイルおよびOracle Database Cloud Backup Module for OCIをダウンロードします。
-
トランスポータブル表領域バックアップ・ユーティリティとその関連ファイルをプロジェクト・ディレクトリにダウンロードします。ダウンロード手順および必要なファイルへのアクセスについては、GitHubのTransportable-Tablespaces-Backup-Utilityリポジトリを参照してください。
-
2つのOCIオブジェクト・ストレージ・バケットを作成します。1つはバックアップを格納するためのバケット、もう1つはスキーマ・メタデータや表領域メタデータなどのメタデータを格納するためのバケットです。詳細は、オブジェクト・ストレージ・バケットの作成を参照してください。
-
API署名キーを生成します。このキーを使用すると、トランスポータブル表領域バックアップ・ユーティリティでOCIオブジェクト・ストレージで認証し、ソース・データベースから表領域バックアップを書き込む権限があることを確認できます。そうしないと、バックアップ・リクエストは拒否されます。詳細は、API署名キーの生成方法を参照してください。
-
リソース・プリンシパルを使用してOracle Cloud Infrastructure OCI Object Storageにアクセスするための動的グループおよびポリシーを定義するには、ターゲットAutonomous AI DatabaseでTransport Tablespacesメタデータ・バンドルを安全にダウンロードするためのリソース・プリンシパルが必要です。詳細は、リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセスを参照してください。
-
Oracle Database Cloud Backup Module for OCIのダウンロードおよびインストール。ソース・データベースからOracle Cloud Infrastructureへの表領域バックアップを作成するには、最初にOracle Database Cloud Backup Module for OCIをインストールします。Oracle Technology Network (OTN)からモジュールをダウンロードし、データベース・サーバーにインストールします。詳細は、「Oracle Database Cloud Backup Module for OCIのインストール」を参照してください。
-
表領域は自己完結型である必要があります。すべての依存オブジェクトは、転送される表領域のセット内に完全に存在する必要があります。次の問合せを実行して、自己完結を確認します。
行が返されない場合、表領域は自己完結型で転送できます。EXEC DBMS_TTS.TRANSPORT_SET_CHECK('HR,PROD', TRUE); SELECT * FROM TRANSPORT_SET_VIOLATIONS; -
トランスポートの最終バックアップを実行する場合は表領域を
READ ONLYモードに設定する必要がありますが、増分バックアップの場合はREAD WRITEモードのままにできます。詳細は、RMANバックアップの概念を参照してください。 -
ソース・データベースとターゲット・データベースの文字セットは同一または互換性があり、エンディアン(バイト順)はプラットフォーム間で一致する必要があります。詳細は、「ターゲット・オペレーティング・システムのEndian形式へのデータ変換」を参照してください。
-
使用可能なストレージ容量を確認します。トランスポートされたデータファイルに対して、ターゲット・データベース環境で十分なストレージ領域が使用可能であることを確認します。
その他の制限事項のリストは、トランスポータブル表領域の制限事項を参照してください。
親トピック: トランスポータブル表領域を使用したデータの移行
トランスポータブル表領域を使用した移行ワークフロー
この項では、非Autonomous AI DatabaseからAutonomous AI Databaseへのトランスポータブル表領域の移行を実行するステップについて説明します。
非Autonomous AI DatabaseからAutonomous AI Databaseに表領域を直接転送することはできません。表領域を転送するには、まず、ソース・データベースから中間記憶域の場所であるOCI Object Storageに表領域をバックアップします。中間ストレージには、データ・バックアップとメタデータ・バックアップ、および転送された表領域で暗号化が有効になっている場合はTransparent Data Encryption (TDE)ウォレット・ファイルが格納されます。バックアップ後に、中間ストレージからターゲットのAutonomous AI Databaseにデータをリストアします。
トランスポータブル表領域のワークフローには、次のステップが含まれます。
- トランスポータブル表領域のソース・データベース・ホストの準備トランスポータブル表領域操作を実行する前に、いくつかの設定タスクを実行して、ソース・データベース環境が適切に構成されていることを確認します。
-
必要なOCI Object Storageバケットを作成します。詳細は、トランスポート用のストレージの構成を参照してください。
-
リソース・プリンシパル・アクセス用のIAM動的グループおよびポリシーを構成します。詳細は、リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセスを参照してください。
-
必要に応じて、API署名キーを生成します。
-
Oracle提供のトランスポータブル表領域バックアップ・ユーティリティおよびOracle Database Cloud Backup Module for OCIをダウンロードします。
これらの準備ステップは、セキュアなトランスポータブル表領域操作に必要な接続、認証およびストレージ構成を保証します。
詳細は、ソース・データベース・ホスト環境の準備を参照してください。
-
- ソースでバックアップ・ユーティリティを実行します。
PythonベースのスクリプトであるOracle提供のトランスポータブル表領域バックアップ・ユーティリティを使用して、ソース・データベースから表領域バックアップを作成およびアップロードします。このユーティリティ:
-
ソース環境の準備状況を検証します。
-
Oracle Data Pumpエクスポートを使用してメタデータをエクスポートします。
-
Oracle Recovery Manager (RMAN)を使用して表領域データをバックアップします。
-
パッケージ出力、RMANバックアップ・ピース、メタデータ、TDEウォレット・ファイル(該当する場合)、および証明書を圧縮されたtarアーカイブ(トランスポータブル表領域メタデータ・バンドル)にパッケージ化します。
-
指定されたObject Storageバケットにバンドルを安全にアップロードします。
-
アップロードされたバンドルへのURLを返します。リストア・プロセス中に使用されます。
-
また、このユーティリティは、Oracle Database Cloud Backup Module for OCIを起動して、API署名キーおよび必要な証明書用のウォレットを作成し、OCI Object Storageへのセキュアなアクセスを確保します。
-
増分バックアップと非増分バックアップの両方がサポートされています。ターゲットAutonomous AI Databaseのリストア・ワークフローは、選択したバックアップ・タイプによって異なります。
詳細は、ソース・データベースでの表領域バックアップの実行: ステップと例を参照してください。
-
- Autonomous AI Databaseへの表領域のインポート ターゲットAutonomous AI Databaseでトランスポータブル表領域をリストアするプロセスは、ソース・データベースの表領域バックアップのタイプによって異なります。
-
非増分バックアップ
Autonomous AI Databaseのプロビジョニング中に非増分バックアップを適用します。これにより、データとメタデータの両方が1ステップでリストアされます。
-
増分バックアップ
まず、ソース・データベースに
level 0増分バックアップを作成します。ターゲットAutonomous AI Databaseのプロビジョニング時に、ソース・データベースからlevel 0表領域バックアップをリストアします。データベースの作成後、後続の増分レベル1バックアップを順番に適用します。このプロセス中に、RMANバックアップ・ピースのみがターゲット・データベースにコピーされます。関連付けられたメタデータは、最終的な増分バックアップがターゲットのAutonomous AI Databaseに適用された後に作成されます。
詳細は、Autonomous AI Databaseへの表領域のトランスポートを参照してください。
-
親トピック: トランスポータブル表領域を使用したデータの移行
ソース・データベース・ホスト環境の準備
トランスポータブル表領域操作を実行する前に環境を設定するために必要なステップについて説明します。
トピック
- ソース・データベースでのディレクトリの作成
ソース・データベースを実行しているホストにプロジェクト・ディレクトリを作成するステップを示します。このディレクトリは、トランスポータブル表領域関連ファイルのステージング領域として機能します。 - トランスポータブル表領域バックアップ・ユーティリティのダウンロードと設定
Oracle提供のトランスポータブル表領域バックアップ・ユーティリティと関連ファイル、およびGitHubリポジトリからダウンロードする方法について説明します。 - OCI用のOracle Database Cloud Backup Moduleのインストール
Oracle Database Cloud Backup Module for OCIをデータベース・サーバーにダウンロードおよびインストールする方法について説明します。 - トランスポート用の記憶域の構成
トランスポータブル表領域操作の記憶域およびアクセスを構成するステップを示します。
親トピック: トランスポータブル表領域を使用したデータの移行
ソース・データベースでのディレクトリの作成
ソース・データベースを実行しているホストにプロジェクト・ディレクトリを作成するステップを示します。このディレクトリは、トランスポータブル表領域関連ファイルのステージング領域として機能します。
プロジェクト・ディレクトリを作成するステップは、次のとおりです。
-
ソースOracleデータベースが実行されているソース・データベース・ホストにログインします。
-
必要なファイルを格納するのに十分な領域がある適切な場所を特定します。
-
ディレクトリを作成します。次のコマンドを実行して、新しいプロジェクトディレクトリを作成します。
mkdir -p /u01/tts_project -
ディレクトリに対する適切な権限を付与します。たとえば:
chmod 755 /u01/tts_project -
「ディレクトリ」にナビゲートします。たとえば:
cd /u01/tts_project
親トピック: ソース・データベース・ホスト環境の準備
トランスポータブル表領域バックアップ・ユーティリティのダウンロードおよび設定
Oracle提供のトランスポータブル表領域バックアップ・ユーティリティおよび関連ファイル、およびそれらをGitHubリポジトリからダウンロードする方法について説明します。
Oracleには4つの個別ファイルがあります。バンドルされたインストーラはありません。ソース・データベース・ホスト上に以前に作成したtts_projectディレクトリなど、4つすべてのファイルを同じディレクトリに個別にダウンロードします。次のファイルが提供され、それぞれに特定の目的があります。
-
README.md: 概要、設定手順、使用例および既知の考慮事項。最初にこのファイルを確認します。 -
tts-backup-env.txt: バックアップ操作に必要な入力値の指定に使用されるパラメータ・ファイル。tts-backup-env.txtファイルを使用して、データベース接続情報、オブジェクト・ストアの場所、表領域およびスキーマ名などの詳細など、バックアップ・プロセスに必要なすべての入力パラメータを指定します。tts-backup.pyは、tts-backup-env.txtパラメータ・ファイルに指定されているパラメータを使用してトランスポータブル表領域のバックアップを実行するPythonスクリプトです。 -
ttsTemplate.txt: ユーティリティ・パラメータ(ソース・データベースの詳細、OCIオブジェクト・ストレージ・ターゲット、認証など)のテンプレート。環境用にコピーおよび編集します。 -
tts-backup.py: Pythonベースのトランスポータブル表領域バックアップ・ユーティリティ。ソースの検証、バックアップの作成、必要なメタデータのパッケージ化、およびバックアップのOCI Object Storageへのアップロードを行います。このユーティリティを実行してソース・データベースをバックアップします。このユーティリティは、tts-backup-env.txtファイルに指定されたパラメータを使用してバックアップを実行します。
最新のトランスポータブル表領域バックアップ・ユーティリティおよび関連ファイルは、GitHubパッケージから取得できます。ダウンロード手順およびファイルへのアクセスについては、Transportable-Tablespaces-Backup-Utilityリポジトリを参照してください。
tts-backup.pyを実行する前に、tts-backup-env.txtファイルを構成します。トランスポータブル表領域バックアップ・ユーティリティは、バックアップを実行するためにこのファイルを読み取ります。パラメータ値がないか正しくないと、バックアップが失敗します。
次の表に、各パラメータの説明と値の例を示します。
| パラメータ名 | 摘要 | 例 |
|---|---|---|
|
|
トランスポート表領域プロジェクトの名前。 |
|
|
|
ソース・データベースの名前。 |
|
|
|
表領域名のカンマ区切りリスト。 このパラメータはオプションで、すべてのユーザー定義表領域にデフォルト設定されます。 |
|
|
|
スキーマ名のカンマ区切りリスト。 このパラメータはオプションで、SYS以外のすべてのスキーマにデフォルト設定されます。 |
|
データベース接続パラメータ:
| パラメータ名 | 摘要 | 例 |
|---|---|---|
|
|
ソース・データベースのホスト名。 |
|
|
|
ソース・データベースのリスナー・ポート。 |
|
|
|
ソース・データベースに接続するためのデータベース・サービス名。 |
|
|
|
ソース・データベースを含むサーバー上のOracle Home値。 |
|
|
|
ソース・データベースに接続するためのユーザー名。指定されたユーザー名には、 |
|
|
|
ソース・データベースに接続するためのパスワード。 指定したパスワードは無視されます。バックアップ・ユーティリティ・スクリプトの実行時に、パスワードを手動で入力するよう求められます。 |
|
|
|
ソース・データベースのバージョン。サポートされているバージョンは、Oracle Database 19c以上です。 |
|
OCI Object Storage Service (OSS)パラメータ: これらのパラメータは、OCI Object Storage Service (OSS)を使用してバックアップおよびメタデータを格納する場合にのみ必要です。
| パラメータ名 | 摘要 | 例 |
|---|---|---|
|
|
OCIオブジェクト・ストレージ・バケットURI: データ・バックアップを格納する宛先。 |
|
|
|
OCIオブジェクト・ストレージ・バケットURI: メタデータ・バックアップを格納する宛先。 |
|
|
|
ウォレットをダウンロードし、すべての証明書をインポートする このパラメータはオプションで、デフォルトで現在のディレクトリに設定されます。 |
|
|
|
基本認証情報を含む構成ファイル・スニペットへのパス。 |
|
|
|
OCIオブジェクト・ストレージ・バケットのコンパートメントOCID。 |
|
|
|
HTTPプロキシサーバー このパラメータはオプション。 |
|
|
|
HTTPプロキシ・サーバー接続ポート このパラメータはオプション。 |
|
Transparent Data Encryption (TDE)キー・パラメータ: この入力は、1つ以上の表領域がTransparent Data Encryption (TDE)を使用して暗号化されている場合にのみ必要です。
| パラメータ名 | 摘要 |
|---|---|
|
|
Transparent Data Encryption (TDE)ウォレット・ストアのパスワード 指定したパスワードは無視されます。バックアップ・ユーティリティ・スクリプトの実行時に、パスワードを手動で入力するよう求められます。 |
最終バックアップ・パラメータ:
| パラメータ名 | 摘要 | 例 |
|---|---|---|
|
|
非増分操作を指定するか、最後のバックアップが増分操作であることを示します。 完全(非増分)バックアップを実行するには、 増分バックアップを実行するには、 増分順序の最後のバックアップ操作は、メタデータがエクスポートされるように、 |
|
(オプション)パフォーマンス・パラメータ:
| パラメータ名 | 摘要 |
|---|---|
|
|
バックアップに使用するチャネルの数。 |
|
|
|
親トピック: ソース・データベース・ホスト環境の準備
Oracle Database Cloud Backup Module for OCIのインストール
データベース・サーバーにOracle Database Cloud Backup Module for OCIをダウンロードおよびインストールする方法について説明します。
Oracle Database Cloud Backup Module for OCIでは、Oracle Recovery Manager (RMAN)を使用して、OCI Object Storageでバックアップおよびリストアを実行できます。モジュールをインストールして使用するには、Oracle Cloud資格証明が必要です。インストールされたモジュールは、トランスポータブル表領域バックアップ・ユーティリティによって、証明書および認証キーをOracleウォレットに安全に格納するために使用されます。ウォレットは、OCI Object StorageでRMANのバックアップおよびリストアを実行するために使用されます。
Oracle Technology Network (OTN)からモジュールをダウンロードし、インストール・ステップについては、OCI用のOracle Database Cloud Backupモジュールのインストールを参照してください。
親トピック: ソース・データベース・ホスト環境の準備
輸送用ストレージの構成
トランスポータブル表領域操作の記憶域およびアクセスを構成するステップを示します。
トランスポータブル表領域のバックアップを実行するには、バックアップ・ファイルおよび関連するメタデータを格納するように記憶域を構成する必要があります。記憶域の場所は、トランスポートの中間リポジトリとして機能します。バックアップを格納するには、OCI Object Storageバケットを使用します。
-
OCIコンソールへのサインイン
Oracle Cloudコンソールにログインします、
詳細は、OCIコンソールへのサインインを参照してください。
-
オブジェクト・ストレージ・パケットの作成
オブジェクト・ストレージ・バケットを作成する詳細なステップは、オブジェクト・ストレージ・バケットの作成を参照してください。
2つのオブジェクト・ストレージ・バケット
tts_data_bucketおよびtts_bucketバケットを作成する必要があります。
親トピック: ソース・データベース・ホスト環境の準備
ソース・データベースでの表領域バックアップの実行: ステップと例
次のタスクのリストでは、表領域のトランスポート処理の概要を示します。各タスクの詳細は、後続の例で示します。
-
自己完結型の表領域セットを選択します。
-
非増分操作または増分操作での最終バックアップの場合は、表領域を
READ-ONLYモードにします。トランスポータブル表領域セット(またはトランスポータブル・セット)は、トランスポートされる一連の表領域のデータファイルと、表領域セットの構造情報(メタデータ)を含むエクスポート・ファイルで構成されます。
例
次の例に、表領域をトランスポートする手順を示します。この例では、次に示すデータファイルおよび表領域が存在することを前提としています。
| 表スペース | データファイル |
|---|---|
|
|
|
|
|
|
タスク1: 表領域が自己完結型であることの確認
-
表領域セット内に、そのセットに含まれない表に関する索引が含まれている場合
-
パーティション表の一部が表領域セットに含まれている場合コピーする表領域セットは、パーティション化した表のすべてのパーティションが含まれている状態、またはまったく含まれていない状態にしてください。
-
表領域セット内の表に、そのセットに含まれないLOBを指すLOB列が含まれている場合。
表領域のセットが自己完結型かどうかを判断するには、Oracle提供のパッケージDBMS_TTSでTRANSPORT_SET_CHECKプロシージャを起動します。たとえば:
EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('sales_1,sales_2', TRUE);パッケージは、すべての依存オブジェクト(索引、制約、パーティションなど)が、転送される表領域のセット内に完全に存在することを検証します。転送の成功を妨げるクロステーブルスペースの依存関係はありません。
TRANSPORT_SET_VIOLATIONSビューを問い合せて違反を表示します。たとえば:SELECT * FROM TRANSPORT_SET_VIOLATIONS; この例では、トランスポート・セット・チェック中に検出された違反をリストします。タスク2: バックアップの作成
このタスクでは、このステップに必要な前提条件がすべて完了していることを前提としています。詳細は、ソース・データベース・ホスト環境の準備を参照してください。
-
プロジェクト・ディレクトリに移動し、
tts-backup-env.txtパラメータ・ファイルを開きます。必要に応じて、パラメータ・ファイルに入力を指定します。たとえば:[DEFAULT] ... PROJECT_NAME=tts_project DATABASE_NAME=orclpdb1 TABLESPACES=sales_1,sales_2 SCHEMAS=SALES ... HOSTNAME=<host> LSNR_PORT=1521 DB_SVC_NAME=tts_db ORAHOME=/opt/oracle/product/19c/dbhome_1 DBUSER=USER DB_VERSION=19c ... TTS_BACKUP_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_data_bucket TTS_BUNDLE_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_bucket OCI_INSTALLER_PATH=/home/oracle/opc_installer/oci_installer/oci_install.jar CONFIG_FILE=/home/oracle/OCI_CONFIG/config COMPARTMENT_OCID=ocid1.compartment.oc1..xxxxx OCI_PROXY_HOST=proxy.company.com OCI_PROXY_PORT=80 ... -
パラメータ・ファイルを構成したら、オプションで
tts-backup.pyスクリプトの予行演習を実行できます。予行演習を実行すると、ソース・データベース・ホストが適切に構成され、トランスポータブル表領域操作の準備ができていることを検証できます。このプロセスでは、欠落している前提条件をチェックし、指定されたストレージ宛先への接続を検証し、すべての必須パラメータが正しく設定されていることを確認します。実際のバックアップを開始する前にドライ・ランを実行すると、事前に潜在的な問題を特定して解決できるため、トランスポータブル表領域操作中のエラーのリスクが軽減されます。次のコマンドを実行して、スクリプトのドライ・ランを実行します。$ python3 /u01/tts_project/tts-backup.py --DBPASSWORD=xxx --DRY_RUN=TRUE -
ドライ・ランを完了し、発生したエラーを解決した後、
tts-backup.pyスクリプトを実行してソース・データベースのバックアップを開始します。$ python3 /u01/tts_project/tts-backup.py --DBPASSWORD=xxxこの例では、トランスポータブル表領域バックアップ・ユーティリティのPythonスクリプトを実行して、ソース・データベースをバックアップします。
FINAL_BACKUPパラメータの値に応じて、バックアップは増分または非増分のいずれかになります。Project_Directoryパラメータは、トランスポータブル表領域バックアップ・ユーティリティ(tts-backup.py)およびパラメータ・ファイル(tts-backup-env.txt)が格納されるディレクトリへのフルパスを指定します。バックアップを実行するデータベース・ユーザーの
--DBPASSWORDパスワード。--TDE_WALLET_STORE_PASSWORDは、Transparent Data Encryption (TDE)ウォレットのパスワードを指定します。これは、表領域が暗号化されている場合にのみ必要です。ノート
コマンドを実行する前に、tts-backup-env.txtファイルが正しい入力(OCIオブジェクト・ストレージの詳細、バケットURL、データベース・パラメータなど)で構成されていることを確認してください。tts-backup.pyスクリプトは、入力を検証し、ソース・データベースでチェックを実行し、バックアップ・プロセスを開始します。FINAL_BACKUPがTRUEに設定されている場合、スクリプトはData Pumpエクスポート・ユーティリティを使用して表領域およびスキーマ・メタデータをエクスポートします。 -
スクリプトが正常に完了すると、ソース・データベースからOCIオブジェクト・ストレージ・バケットに表領域データ・バックアップがアップロードされます。バックアップは、選択したバックアップ・タイプに応じて、増分または非増分のいずれかになります。非増分バックアップは、特定の時点のすべての表領域データで構成され、リストア操作の完全バックアップを提供します。増分バックアップは、ベースラインとして機能するレベル0のバックアップと、前回のバックアップ以降の変更を含む1つ以上の後続の増分(レベル1)バックアップで構成されます。ただし、増分バックアップからリストアする場合は、データの一貫性を確保するために、レベル0のバックアップと後続のすべての増分バックアップを順番に適用する必要があります。
また、スクリプトでは、必要なメタデータおよびウォレット・ファイル(該当する場合)を含む圧縮トランスポータブル表領域メタデータ・バンドルが作成され、OCIオブジェクト・ストレージ・メタデータ・バケットにアップロードされます。
非増分バックアップのURLの例:https://swiftobjectstorage.region.oraclecloud.com/v1/dwcsdev/tts_bucket/orclpdb1_bkp.tgz増分バックアップのURLの例:
各URLには、メタデータ・バンドル名に増分バックアップ・レベルが含まれます(例:level_0、 ⁇level_1、 ⁇final_bkp)。これにより、リストア・プロセス中に各バックアップ・セットを迅速に識別して参照できます。level 0バックアップから始めて、後続の各バックアップから最終バックアップまで、各増分バックアップを順番に適用してください。https://swiftobjectstorage.region.oraclecloud.com/v1/dwcsdev/tts_bucket/orclpdb1_level_0.tgzhttps://swiftobjectstorage.region.oraclecloud.com/v1/dwcsdev/tts_bucket/orclpdb1_level_1.tgz…
https://swiftobjectstorage.region.oraclecloud.com/v1/dwcsdev/tts_bucket/orclpdb1_final_bkp.tgz
親トピック: トランスポータブル表領域を使用したデータの移行
Autonomous AI Databaseへの表領域の転送
トランスポータブル表領域を使用してAutonomous AI Databaseにデータを移行する方法について説明します。
ターゲットAutonomous AI Databaseでトランスポータブル表領域をリストアするプロセスは、ソース・データベースからの表領域バックアップが増分か非増分かによって異なります。
Autonomous AI Databaseへの表領域の転送は、新しいAutonomous AI Databaseインスタンスをプロビジョニングする場合にのみサポートされます。
ソース・データベースの非増分表領域バックアップを使用したリストア
非増分(完全)ソース表領域バックアップでは、メタデータ・バンドルには、ソース・データベースの完全な表領域バックアップと、表領域およびスキーマ・メタデータのData Pumpエクスポートが含まれます。Autonomous AI Databaseのプロビジョニング中に、「拡張オプション」の下の「移行」セクションの「表領域zipファイルのオブジェクト・ストレージ・バケットURI」テキスト・ボックスにメタデータ・バンドルURLを指定して、ソース表領域バックアップから表領域をインポートします。プロビジョニング・プロセスでは、表領域のバックアップがリストアされ、表領域およびスキーマ・メタデータがデータベースにインポートされます。
たとえば:

図adb_transportable_tablespace_migration.pngの説明
Autonomous AI Databaseをプロビジョニングする詳細なステップは、Autonomous AI Databaseインスタンスのプロビジョニングを参照してください。
ソース・データベースの増分表領域バックアップを使用したリストア
-
ソース・データベースのレベル0の増分表領域バックアップは、Autonomous AI Databaseをプロビジョニングしている場合にのみ適用できます。既存のAutonomous AI Databaseには適用できません。
-
プロビジョニング中にレベル0のバックアップを適用すると、ソース・データベースからターゲット・データベースにRMANバックアップ・データのみがリストアされます。この段階では、表領域、スキーマまたはデータベース・オブジェクトは作成されません。
-
プロビジョニング後、ソース・データベースの後続のレベル1の増分表領域バックアップを適用できます。レベル1および後続の増分バックアップは、プロビジョニング中にソース・データベースからのレベル0バックアップ表領域バックアップが適用された場合にのみ適用できます。これらの増分バックアップは、作成された順序で適用する必要があります。各増分バックアップでは、ターゲット・データベースのRMANバックアップが更新されますが、表領域およびスキーマ・オブジェクトはまだ作成されません。
-
最終増分バックアップを適用して、トランスポータブル表領域操作を完了します。この最後のステップでは、ターゲット・データベース上のすべての表領域および関連するデータベース・オブジェクトをリストアします。
-
デフォルトでは、ターゲット・データベースの移行された表領域は
READ ONLYモードで作成されます。必要に応じて、表領域をREAD WRITEモードに変換します。
レベル0のバックアップを使用してAutonomous AI Databaseをプロビジョニングします:
まず、レベル0の表領域を使用してAutonomous AI Databaseをプロビジョニングし、ソース・データベースをバックアップします。この操作により、データベースがプロビジョニングされ、データベースの初期レベル0のバックアップがリストアされます。詳細は、Autonomous AI Databaseインスタンスのプロビジョニングを参照してください。
後続の増分(レベル1)バックアップを適用します。
データベースがプロビジョニングされ、ソース表領域のレベル0のバックアップがリストアされたら、増分(レベル1)バックアップを順番に適用します。
増分バックアップを使用してターゲットAutonomous AI Databaseを更新するステップ:
-
必要に応じて、次の前提条件ステップを実行します:
-
「クラウド」の横にある
をクリックして、Oracle Cloud Infrastructure Consoleを開きます。
-
Oracle Cloud Infrastructureの左側のナビゲーション・メニューから、「Oracle Database」をクリックし、「Autonomous AI Database」をクリックします。
-
「自律型AIデータベース」ページで、「表示名」列の下のリンクから自律型AIデータベースを選択します。
ターゲットAutonomous AI Databaseでソース・データベースから後続の増分表領域バックアップを適用するには、次のステップに従います:
-
「他のアクション」ドロップダウン・リストで、「データの移行」を選択します。
「データの移行」ページが表示されます。
ノート
「データの移行」オプションは、プロビジョニング中にレベル0のインポートが完了し、プロビジョニング後にトランスポータブル表領域操作を完了するために追加の増分表領域バックアップ・インポートが必要なデータベースでのみ使用できます。 -
「データの移行」ページで、「トランスポータブル表領域のインポート」トグルを有効にします。トグルを有効にすると、「表領域zipのオブジェクト・ストレージ・バケットURI」ファイル・フィールドが表示されます。トランスポータブル表領域のメタデータ・バンドルURLをこのフィールドに入力します。
トランスポータブル表領域メタデータ・バンドルURLはOCIオブジェクト・ストレージからダウンロードする必要があるため、リソース・プリンシパルを使用してOCIオブジェクト・ストレージへのアクセスを許可する動的グループおよびポリシーを設定する必要があります。ターゲットAutonomous AI Databaseでトランスポータブル表領域メタデータ・バンドルを安全にダウンロードするには、リソース・プリンシパルの構成が必要です。詳細は「前提条件」を参照してください。
たとえば、ソース・データベースからレベル1の表領域バックアップを適用するには、ソース・データベースからレベル1の表領域バックアップに適切なURLを指定します。

図adb_transportable_tablespaces_level1_restore.pngの説明...
同様に、ソース・データベースから最終的な表領域バックアップを適用する場合は、適切なURLを指定します。たとえば:
-
「移行」をクリックします。
データベース・ライフサイクルの状態が「トランスポート」に変わります。リストアが完了すると、ライフサイクル状態が「使用可能」に変わります。
-
-
親トピック: トランスポータブル表領域を使用したデータの移行
トランスポータブル表領域に関する制限事項
トランスポータブル表領域の制限事項をリストします。
次のノートおよびトランスポータブル表領域の制限事項に注意してください。
-
トランスポータブル表領域は、ソース・データベースがOracle Database 19c以上であり、ECPUコンピュート・モデルを使用している場合にのみサポートされます。
-
Autonomous AI Databaseへの表領域の転送は、新しいAutonomous AI Databaseインスタンスをプロビジョニングする場合にのみサポートされます。
-
TIMESTAMP WITH LOCAL TIME ZONE(TSLTZ)データが含まれている表がある表領域をタイム・ゾーンが異なるデータベース間でトランスポートする場合、TSLTZデータが含まれている表はトランスポートされません。ただし、表領域内のTSLTZデータを含まない表はトランスポートされます。データベースのタイム・ゾーンを確認するには、次の問合せを使用します。SELECT DBTIMEZONE FROM DUAL;ALTER DATABASESQL文を使用すると、データベースのタイム・ゾーンを変更できます。 -
ソース・データベースの夏時間(DST)バージョンは、自律型AIデータベースのDSTバージョン以下である必要があります。
-
暗号化された表領域は、endiannessが異なるプラットフォームにはトランスポートできません。
-
基になるオブジェクトのあるオブジェクト(マテリアライズド・ビューなど)またはコンテナ・オブジェクト(パーティション索引など)は、基になるオブジェクトまたはコンテナ・オブジェクトがすべて表領域セットにない場合はトランスポートできません。
-
Oracle XML DBはAutonomous AI Databaseでサポートされていないため、XMLTypeを含む表領域をトランスポートできません。
次の問合せでは、XMLTypeを含む表領域のリストが返されます。SELECT distinct p.tablespace_name FROM dba_tablespaces p, dba_xml_tables x, dba_users u, all_all_tables t WHERE t.table_name=x.table_name AND t.tablespace_name=p.tablespace_name AND x.owner=u.username; -
SYSTEMまたはSYSAUX表領域、またはユーザーSYSが所有するオブジェクトは転送できません。これに該当するオブジェクトは、PL/SQL、Javaクラス、コールアウト、ビュー、シノニム、ユーザー、権限、ディメンション、ディレクトリおよび順序です。 -
トランスポート元とトランスポート先のデータベースで、互換性のあるデータベース文字セットを使用している必要があります。つまり、次のいずれかが当てはまる必要があります。
-
ソース・データベースとターゲット・データベースのデータベース文字セットが同じです。
-
ソース・データベース文字セットがターゲット・データベース文字セットの厳格な(バイナリ)サブセットです。
-
ソースとターゲットのデータベースで、互換性のある各国語文字セットを使用している必要があります。
-
-
解釈がアプリケーション固有で、データベースに対して不透明なタイプ(
RAW、BFILEなど)は、トランスポートできますが、クロス・プラットフォームのトランスポート操作では変換されません。このタイプの実際の構造はアプリケーションのみが認識するため、このタイプが新規プラットフォームに移動した後、アプリケーションではendiannessの問題に対処する必要があります。OPAQUE型を使用するタイプとオブジェクトも、直接的または間接的にこの制限の影響を受けます。 -
ソース・データベースのSCNは、表領域の転送先のターゲットAutonomous AI DatabaseのSCN以下である必要があります。
-
Autonomous AI Databaseインスタンスでは、ユーザー表領域とシステム表領域の両方を含む最大24の表領域がサポートされます。
SYSTEM、SYSAUX、UNDO、TEMP、REDOなどのデフォルトのシステム表領域をアカウンティングした後、最大19個のユーザー表領域をAutonomous AI Databaseインスタンスにトランスポートできます。 -
トランスポートされた表領域の累積サイズは、Autonomous AI Databaseでサポートされている最大データベース・サイズを超えてはなりません。
親トピック: トランスポータブル表領域を使用したデータの移行
