トランスポータブル表領域を使用したデータの移行
トランスポータブル表領域を使用すると、データおよびメタデータを含む表領域をソース・データベースからターゲット・データベースに移動することで、データの完全エクスポートおよびインポートを必要とせずに、大量のデータを効率的に移行できます。
- トランスポータブル表領域について
トランスポータブル表領域は、データベース間で大量のデータを迅速かつ効率的に移動できるOracle Databaseの機能です。 - 前提条件
データベース間で表領域をトランスポートするための前提条件をリストします。 - トランスポータブル表領域を使用した移行のワークフロー
この項では、Autonomous AI Database以外からAutonomous AI Databaseへのトランスポータブル表領域の移行を実行するステップの概要を示します。 - ソース・データベース・ホスト環境の準備
トランスポータブル表領域操作を実行する前に環境を設定するために必要なステップについて説明します。 - ソース・データベースでの表領域バックアップの実行: ステップと例
次のタスクのリストは、表領域をトランスポートするプロセスを要約したものです。 各タスクの詳細は、後続の例で示します。 - Autonomous AIデータベースへの表領域のトランスポート
トランスポータブル表領域を使用してAutonomous AI Databaseにデータを移行する方法について説明します。 - トランスポータブル表領域の制限事項
トランスポータブル表領域の制限事項を示します。
親トピック: Autonomous AI Databaseへの移行
トランスポータブル表領域の概要
トランスポータブル表領域は、データベース間で大量のデータを迅速かつ効率的に移動できるOracle Databaseの機能です。
Autonomous AI Databaseでトランスポータブル表領域を使用すると、オンプレミスのOracle Databaseやクラウド上のOracleデータベースなど、他のOracleデータベースからユーザー管理表領域全体をトランスポートすることで、プラットフォームをまたいで大規模なデータセットを効率的に移動できます。 個々のオブジェクトではなく完全な表領域を移行すると、移行時間が短縮され、オブジェクト・レベルのエクスポートおよびインポートと比較して停止時間が最小限に抑えられます。 この機能は、データ・ウェアハウスの移行、履歴データのアーカイブおよびデータベースのアップグレードに特に役立ちます。
トランスポータブル表領域では、Transparent Data Encryption (TDE)ウォレット(該当する場合)の管理など、暗号化表領域と非暗号化表領域の両方がサポートされます。 Autonomous AI Databaseはbigfile表領域のみをサポートしているため、転送操作中に、ソースのsmallfile表領域は自動的にbigfile表領域に変換されます。
-
柔軟なデータ移動のためのクロス・プラットフォームの移植性。
-
従来の輸出入より高速な移行とダウンタイムの短縮。
-
本番環境の合理化を維持するためのデータ・アーカイブのサポート。
-
組込みの検証、正しいメタデータ処理およびセキュアなTDEウォレット処理によるセキュリティと整合性。
親トピック: トランスポータブル表領域を使用したデータの移行
前提条件
データベース間で表領域をトランスポートするための前提条件をリストします。
-
Autonomous AI Database以外のデータベースからAutonomous AI Databaseに移行する前に、他のOracle Databasesから移行するユーザーのノートの情報を確認してください。 この情報では、移行および移行後のデータベース操作に影響を与える可能性のある重要な制限および動作の違いについて説明します。
-
ソース・データベースが実行されているホストにステージング・ディレクトリを作成します。 このディレクトリを使用して、トランスポータブル表領域バックアップ・ユーティリティと関連ファイルおよびOracle Database Cloud Backup Module for OCIをダウンロードします。
-
トランスポータブル表領域バックアップ・ユーティリティとその関連ファイルをプロジェクト・ディレクトリにダウンロードします。 ダウンロード手順および必要なファイルへのアクセスについては、GitHubのTransportable-Tablespaces-Backup-Utilityリポジトリを参照してください。
-
2つのOCIオブジェクト・ストレージ・バケットを作成します。1つはバックアップを格納するためのバケット、もう1つはスキーマ・メタデータや表領域メタデータなどのメタデータを格納するためのバケットです。 詳細は、オブジェクト・ストレージ・バケットの作成を参照してください。
-
API署名キーを生成します。このキーにより、トランスポータブル表領域バックアップ・ユーティリティはOCIオブジェクト・ストレージで認証し、ソース・データベースから表領域バックアップを書き込む権限があることを確認できます。 そうしないと、バックアップ・リクエストは拒否されます。 詳細については、「API署名キーを生成する方法」を参照してください。
-
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のインストールを参照してください。
-
リソース・プリンシパルを使用してOracle Cloud Infrastructure OCI Object Storageにアクセスするための動的グループおよびポリシーを定義します。ターゲットAutonomous AI Databaseでトランスポート表領域メタデータ・バンドルを安全にダウンロードするには、リソース・プリンシパルが必要です。 詳細については、「リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス」を参照してください。
-
表領域は自己完結型である必要があります。 すべての依存オブジェクトは、トランスポートされる表領域のセット内に完全に存在する必要があります。 次の問合せを実行して自己完結性を検証します。
行が返されない場合、表領域は自己完結型で、転送できます。EXEC DBMS_TTS.TRANSPORT_SET_CHECK('HR,PROD', TRUE); SELECT * FROM TRANSPORT_SET_VIOLATIONS; -
トランスポートの最終バックアップを実行する場合は表領域を
READ ONLYモードに設定し、増分バックアップの場合は表領域をREAD WRITEモードのままにできます。 詳細は、RMANバックアップの概念を参照してください。 -
ソース・データベースとターゲット・データベースは、同じまたは互換性のある文字セットを持つ必要があり、エンディアン(バイト順序)はプラットフォーム間で一致する必要があります。 詳細は、ターゲット・オペレーティング・システムのエンディアン形式へのデータの変換を参照してください。
-
ターゲット・データベースに、転送されたデータファイル用の十分な記憶域をプロビジョニングします。
その他の制限のリストは、トランスポータブル表領域の制限事項を参照してください。
親トピック: トランスポータブル表領域を使用したデータの移行
トランスポータブル表領域を使用した移行ワークフロー
この項では、Autonomous AI Database以外からAutonomous AI Databaseへのトランスポータブル表領域の移行を実行するステップの概要を示します。
Autonomous AI Database以外の表領域をAutonomous AI Databaseに直接転送することはできません。 表領域をトランスポートするには、まずソース・データベースから中間記憶域の場所であるOCI Object Storageに表領域をバックアップします。 中間記憶域には、データ・バックアップとメタデータ・バックアップ、および転送された表領域で暗号化が有効になっている場合はTransparent Data Encryption (TDE)ウォレット・ファイルが格納されます。 バックアップ後に、中間ストレージからターゲットのAutonomous AI Databaseにデータをリストアします。
トランスポータブル表領域のワークフローには、次のステップが含まれます。
- トランスポータブル表領域のソース・データベース・ホストの準備トランスポータブル表領域操作を実行する前に、いくつかの設定タスクを実行して、ソース・データベース環境が適切に構成されていることを確認します。
-
必要なOCIオブジェクト・ストレージ・バケットを作成します。 詳細は、Configure Storage for Transportを参照してください。
-
リソース・プリンシパル・アクセスのIAM動的グループおよびポリシーを構成します。 詳細については、「リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス」を参照してください。
-
必要に応じて、API署名キーを生成します。
-
Oracle提供のTransportable Tablespace Backup Utilityと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へのセキュアなアクセスを確保します。
-
増分バックアップと非増分バックアップの両方がサポートされています。 非増分バックアップは、表領域が読取り専用モードのフル1回かぎりのバックアップです。 増分バックアップは、レベル0のバックアップから始まり、その後に1つ以上の増分(レベル1)バックアップと、タブスペースが読取り専用モードの最終増分バックアップが続きます。 ターゲット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データベースへの表領域のトランスポートを参照してください。
-
親トピック: トランスポータブル表領域を使用したデータの移行
ソース・データベース・ホスト環境の準備
トランスポータブル表領域操作を実行する前に環境を設定するために必要なステップについて説明します。
トピック
- ソース・データベースでのディレクトリの作成
ソース・データベースを実行しているホストにプロジェクト・ディレクトリを作成するステップを示します。 このディレクトリは、トランスポータブル表領域関連ファイルのステージング領域として機能します。 - トランスポータブル表領域バックアップ・ユーティリティのダウンロードと設定
Oracle提供のトランスポータブル表領域バックアップ・ユーティリティおよび関連ファイルについて説明し、それらをGitHubリポジトリからダウンロードする方法について説明します。 - Oracle Database Cloud Backup Module for OCIのインストール
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には5つの個別ファイルがあり、バンドルされたインストーラはありません。 5つすべてのファイルを同じディレクトリに個別にダウンロードします。たとえば、ソース・データベース・ホストで以前に作成したtts_projectディレクトリなどです。 次のファイルが提供され、それぞれが特定の目的で使用されます。
-
README.md: 概要、設定手順、使用例、および既知の考慮事項。 最初にこのファイルをレビューしてください。 -
tts-backup-env.txt: バックアップ操作に必要な入力値を指定するために使用するパラメータ・ファイル。tts-backup-env.txtファイルを使用して、データベース接続情報、オブジェクト・ストアの場所、表領域およびスキーマ名などの詳細を含め、バックアップ・プロセスに必要なすべての入力パラメータを指定します。tts-backup.pyは、tts-backup-env.txtパラメータ・ファイルに指定されているパラメータを使用してトランスポータブル表領域のバックアップを実行するPythonスクリプトです。 -
tts-backup-env-sample.txt: サンプル・パラメータ・ファイル。 環境用にコピーおよび編集します。 -
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)ウォレット・ストア・パスワード 指定されたパスワードは無視されます。バックアップ・ユーティリティ・スクリプトの実行時に、パスワードを手動で入力するよう求められます。 |
最終バックアップ・パラメータ:
| パラメータ名 | 説明 | 例 |
|---|---|---|
|
|
非増分操作を指定するか、または最後のバックアップが増分操作であることを示します。 完全(非増分)バックアップを実行するには、 増分バックアップを実行するには、 増分順序の最後のバックアップ操作は、メタデータを確実にエクスポートするために |
|
(オプション)パフォーマンス・パラメータ:
| パラメータ名 | 説明 |
|---|---|
|
|
バックアップに使用するチャネルの数。 |
|
|
|
親トピック: ソース・データベース・ホスト環境の準備
OCI用のOracle Database Cloud Backup Moduleのインストール
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オブジェクト・ストレージを使用してRMANのバックアップおよびリストアを実行するために使用されます。
Oracle Technology Network (OTN)からモジュールをダウンロードしてから、インストール・ステップについては、Oracle Database Cloud Backup Module for OCIのインストールを参照してください。
親トピック: ソース・データベース・ホスト環境の準備
トランスポート用のストレージの構成
トランスポータブル表領域操作の記憶域およびアクセスを構成するステップを示します。
トランスポータブル表領域バックアップを実行するには、バックアップ・ファイルおよび関連するメタデータを格納するように記憶域を構成する必要があります。 記憶域の場所は、トランスポートの中間リポジトリとして機能します。 2つのオブジェクト・ストレージ・バケット<tts_data_bucket>および<tts_metadata_bucket>を作成する必要があります。
-
OCIコンソールへのサインイン
Oracle Cloudコンソールにログインします。
詳細は、OCIコンソールへのサインインを参照してください。
-
オブジェクト・ストレージ・バケットの作成
オブジェクト・ストレージ・バケットを作成するステップの詳細は、オブジェクト・ストレージ・バケットの作成を参照してください。
親トピック: ソース・データベース・ホスト環境の準備
ソース・データベースでの表領域バックアップの実行: ステップと例
次のタスクのリストでは、表領域のトランスポート処理の概要を示します。 各タスクの詳細は、後続の例で示します。
-
自己完結型の表領域セットを選択します。
-
非増分操作の場合、または増分操作の最終バックアップの場合、表領域を
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_metadata_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スクリプトの予行演習を実行できます。 ドライ・ランを実行すると、ソース・データベース・ホストが正しく構成され、トランスポータブル表領域操作の準備ができていることを確認できます。 このプロセスでは、欠落している前提条件がチェックされ、指定されたストレージ宛先への接続が検証され、すべての必須パラメータが正しく設定されていることを確認します。 実際のバックアップを開始する前にドライ・ランを実行すると、潜在的な問題を事前に特定して解決し、トランスポータブル表領域操作中のエラーのリスクを軽減できます。次のコマンドを実行して、バックアップの予行演習を実行します。 バックアップを実行するデータベース・ユーザーのパスワードを指定します。 TDEウォレット・ストア・パスワードは、表領域が暗号化されている場合にのみ必要です。$ python3 /u01/tts_project/tts-backup.py --DRY_RUN=TRUEデータベース・パスワードの入力、および必要に応じてTDEパスワードの入力を求められます。
-
予行演習を完了し、発生したエラーを解決した後、
tts-backup.pyスクリプトを実行してソース・データベースのバックアップを開始します。$ python3 /u01/tts_project/tts-backup.pyデータベース・パスワードの入力、および必要に応じてTDEパスワードの入力を求められます。
この例では、トランスポータブル表領域バックアップ・ユーティリティのPythonスクリプトを実行して、ソース・データベースをバックアップします。
FINAL_BACKUPパラメータの値に応じて、バックアップは増分または非増分のいずれかになります。Project_Directoryパラメータでは、トランスポータブル表領域バックアップ・ユーティリティ(tts-backup.py)およびパラメータ・ファイル(tts-backup-env.txt)が格納されるディレクトリへのフルパスを指定します。ノート:
コマンドを実行する前に、tts-backup-env.txtファイルが正しい入力(OCIオブジェクト・ストレージの詳細、バケットURL、データベース・パラメータなど)で構成されていることを確認してください。tts-backup.pyスクリプトは、入力を検証し、ソース・データベースのチェックを実行してから、バックアップ・プロセスを開始します。FINAL_BACKUPがTRUEに設定されている場合、スクリプトはData Pumpエクスポート・ユーティリティを使用して表領域およびスキーマ・メタデータをエクスポートします。 -
スクリプトが正常に完了すると、ソース・データベースからOCI Object Storageバケットに表領域データ・バックアップがアップロードされます。 バックアップは、選択したバックアップ・タイプに応じて、増分または非増分のいずれかになります。 非増分バックアップは、特定の時点のすべての表領域データで構成され、リストア操作の完全バックアップを提供します。 増分バックアップは、ベースラインとして機能するレベル0バックアップと、前回のバックアップからの変更を含む1つ以上の後続の増分(レベル1)バックアップで構成されます。 ただし、増分バックアップからリストアする場合は、データの一貫性を確保するために、レベル0のバックアップと後続のすべての増分バックアップを順番に適用する必要があります。
このスクリプトでは、必要なメタデータおよび(該当する場合は)ウォレット・ファイルを含む圧縮トランスポータブル表領域メタデータ・バンドルも作成され、OCIオブジェクト・ストレージ・メタデータ・バケットにアップロードされます。
非増分バックアップのURLの例:https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_bkp.tgz増分バックアップのURLの例:
各URLのメタデータ・バンドル名には、増分バックアップ・レベル(level_0、level_1、final_bkpなど)が含まれることに注意してください。 これにより、リストア・プロセス中に各バックアップ・セットをすばやく識別して参照できます。level 0バックアップから開始し、後続の各バックアップを最終バックアップまで順番に適用してください。https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_0.tgzhttps://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_1.tgz…
https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_n.tgzhttps://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_final_bkp.tgz
親トピック: トランスポータブル表領域を使用したデータの移行
Autonomous AI Databaseへの表領域のトランスポート
トランスポータブル表領域を使用してデータをAutonomous AI Databaseに移行する方法について説明します。
ターゲットAutonomous AI Databaseでトランスポータブル表領域を移行するプロセスは、ソース・データベースからの表領域バックアップが増分であるか非増分であるかによって異なります。
ノート:
Autonomous AI Databaseへの表領域のトランスポートは、新しいAutonomous AI Databaseインスタンスをプロビジョニングする場合にのみサポートされます。
トランスポータブル表領域メタデータ・バンドルURLはOCIオブジェクト・ストレージからダウンロードする必要があるため、リソース・プリンシパルを使用してOCIオブジェクト・ストレージへのアクセスを許可する動的グループおよびポリシーを設定する必要があります。 ターゲットのAutonomous AI Databaseでトランスポータブル表領域メタデータ・バンドルを安全にダウンロードするには、リソース・プリンシパルを構成する必要があります。 詳細は、「前提条件」を参照してください。
ソース・データベースの非増分表領域バックアップを使用したトランスポート
非増分(完全)ソース表領域バックアップでは、メタデータ・バンドルに表領域およびスキーマ・メタデータのData Pumpエクスポートが含まれます。 Autonomous AI Databaseのプロビジョニング中に、メタデータ・バンドルURLを(「拡張オプション」の下の「移行」セクションの「表領域チップ・ファイルのオブジェクト・ストレージ・バケットURI」テキスト・ボックスに)指定して、ソース表領域バックアップから表領域をインポートします。 プロビジョニング・プロセスでは、表領域のバックアップをリストアし、表領域およびスキーマのメタデータをデータベースにインポートします。
たとえば:

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

図adbs_transportable_tablespace_incremental.pngの説明...
同様に、ソース・データベースから最終的な表領域バックアップを適用する場合は、適切なURLを指定します。 たとえば:
-
「移行」をクリックします。
データベース・ライフサイクル状態が「更新中」に変わります。 リストアが完了すると、ライフサイクル状態が「使用可能」に変わります。
-
-
親トピック: トランスポータブル表領域を使用したデータの移行
トランスポータブル表領域に関する制限事項
トランスポータブル表領域の制限事項をリストします。
トランスポータブル表領域に関する次のノートおよび制限事項に注意してください。
-
トランスポータブル表領域は、ソース・データベースがOracle Database 11g以上である場合にのみサポートされます。
-
Autonomous AI Databaseへの表領域のトランスポートは、新しいAutonomous AI Databaseインスタンスをプロビジョニングする場合にのみサポートされます。
-
TIMESTAMP WITH LOCAL TIME ZONE(TSLTZ)データを含む表がある表領域をタイム・ゾーンが異なるデータベース間でトランスポートする場合、TSLTZデータを含む表はトランスポートされません。 ただし、表領域内のTSLTZデータを含まない表はトランスポートされます。データベースのタイム・ゾーンを確認するには、次の問合せを使用します。SELECT DBTIMEZONE FROM DUAL;ALTER DATABASESQL文を使用すると、データベースのタイム・ゾーンを変更できます。 -
ソース・データベースの夏時間(DST)バージョンは、Autonomous AI DatabaseのDSTバージョン以下である必要があります。
-
基礎となるオブジェクトを持つオブジェクト(マテリアライズド・ビューなど)またはオブジェクトを含むオブジェクト(パーティション表など)は、それらのオブジェクトがすべて表領域セットに含まれている場合のみトランスポートできます。
-
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が所有するオブジェクトは転送できません。 -
トランスポート元とトランスポート先のデータベースで、互換性のあるデータベース文字セットを使用している必要があります。 つまり、次のいずれかが当てはまる必要があります。
-
ソース・データベースとターゲット・データベースのデータベース文字セットが同じです。
-
ソース・データベースのキャラクタ・セットは、ターゲット・データベースのキャラクタ・セットの厳密な(バイナリ)サブセットです。
-
ソースとターゲットのデータベースで、互換性のある各国語文字セットを使用している必要があります。
-
-
解釈がアプリケーション固有で、データベースに対して不透明なタイプ(
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でサポートされている最大データベース・サイズを超えないようにする必要があります。
親トピック: トランスポータブル表領域を使用したデータの移行
