ノート:
- このチュートリアルでは、Oracle Cloudへのアクセス権が必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習を完了したら、これらの値をクラウド環境に固有の値に置き換えてください。
Migrate Amazon RDS for PostgreSQL Database to OCI Database with PostgreSQL using OCI GoldenGate
イントロダクション
Oracle Cloud Infrastructure Database with PostgreSQL (OCI Database with PostgreSQL)は、データベース表の作成または削除時にストレージを自動的にスケーリングするフルマネージド・サービスです。これにより、管理が簡素化され、ストレージ・コストが最適化されます。データは、転送中および保存中の両方で暗号化されます。OCI GoldenGateは、PostgreSQLOCI Database with PostgreSQLサービス・データベースを使用したOCI Databaseのシームレスな移行とほぼゼロのダウンタイム移行を実現する論理的なオンライン移行をサポートしています。
The following images shows the architecture for migrating an Amazon Relational Database Service PostgreSQL (Amazon RDS for PostgreSQL) database to OCI Database with PostgreSQL service using OCI GoldenGate, the pg_dump
and the pg_restore
utility.
OCI Database for PostgreSQLは現在、バージョン14および15をサポートしています。このチュートリアルでは、バージョン15を使用しています。メタデータの移行は、pg_dump
およびpg_restore
ユーティリティを使用して行われます。初期ロードおよびデータ・レプリケーションは、OCI GoldenGateを使用して行われます。
ノート: OCI GoldenGateデプロイメント、ソースおよびターゲット・データベース間の接続が確立されていることを確認します。
目的
-
PostgreSQLのAmazon RDSを構成します。
-
OCI GoldenGate構成のPostgreSQLのAmazon RDSのパラメータを変更します。
-
PostgreSQLOCI Database with PostgreSQLを使用してOCI Databaseを構成します。
-
PostgreSQLデプロイメント・タイプにOCI GoldenGateをデプロイします。
-
PostgreSQL用のAmazon RDSからPostgreSQLOCI Database with PostgreSQLを使用してOCI Databaseにスキーマ・メタデータを移行します。
-
ソースAmazon Web Services (AWS)とターゲットOCIの両方について、OCI GoldenGateデプロイメントから接続を作成します。
-
初期ロード用にExtractを作成します。
-
データ同期および登録用のExtractを作成します。
-
初期ロードおよびデータ同期抽出を開始します。
-
初期ロードおよび起動用のReplicatを作成します。
-
デルタ同期用のReplicatを作成します。
-
ソース・データベースでのデータ挿入とのデータ同期をテストします。
-
問題とトラブルシューティング。
前提条件
-
OCI環境(コンパートメント、仮想クラウド・ネットワーク(VCN)、サブネットなど)をプロビジョニングします。
-
PostgreSQLにAmazon RDSをプロビジョニングします。
-
PostgreSQLクライアントにOCI Compute VMをプロビジョニングします。
-
OCI Database with PostgreSQLをプロビジョニングします。
-
OCI GoldenGateビッグ・デプロイメントをプロビジョニングします。
タスク1: PostgreSQLインスタンス用のAmazon RDSの作成
AWSコンソールにログインし、PostgreSQLのRDSインスタンスを作成します。次の図に示すように、必要な情報を入力します。
タスク2: カスタム・パラメータ・グループの作成と必須パラメータの変更
RDSインスタンスに接続し、「構成」タブに移動します。DBインスタンス・パラメータ・グループを検索します。デフォルトに設定する必要があります。ここで、「パラメータ・グループの作成」をクリックして個別のパラメータ・グループを作成し、次の図に示すように必要な情報を入力します。
Task 3: Create OCI Database with PostgreSQL Database
OCIコンソールにログインし、「データベース」に移動して「データベースの作成」をクリックします。
タスク4: OCIコンピュート・インスタンスの作成および接続用のPostgreSQLクライアントのインストール
OCIコンソールでOCIコンピュート・インスタンスを作成し、次のコマンドを使用してPostgreSQLをインストールする必要があります。
sudo dnf install -y postgresql15*
psql --version
タスク5: OCIコンピュート・インスタンスからソースとターゲットの両方への接続のテスト
-
AWSコンソールに移動し、接続用のAWSのエンドポイントを取得します。
-
次のコマンドを実行して、PostgreSQLインスタンスのAmazon RDSに接続します。
-
OCIコンソールに移動し、接続用のOCI Database with PostgreSQLエンドポイントを取得します。
-
次のコマンドを実行して、PostgreSQLOCI Database with PostgreSQLインスタンスを含むOCI Databaseに接続します。
タスク6: OCI GoldenGateデプロイメントの作成および接続のテスト
-
OCIコンソールに移動し、Oracle Databaseに移動し、GoldenGateをクリックしてOCI GoldenGateデプロイメントを作成します。
-
次の情報を入力し、「テクノロジの選択」をPostgreSQLにします。
-
「コンパートメント」およびプライベート・サブネットを「サブネット」として選択します。デプロイメント・コンソールにアクセスするには、パブリック・アクセスを有効にしてください。これはデプロイメントの作成時に有効にする必要があります。有効にしないと、無効になります。
-
「パスワード・シークレットの作成」をクリックして、事前にパスワード・シークレットを作成します。OCI GoldenGateデプロイメントでは、作成時にプレーン・テキスト・パスワードではなくシークレットを要求します。
デプロイメントは、作成後に使用可能である必要があります。
-
次のイメージに示すように、必要な情報を使用して、Amazon RDS for PostgreSQLとOCI Database with PostgreSQLの両方のデータベースへの接続を作成します。
-
これらの接続を「割り当てられた接続」でOCI GoldenGateデプロイメントに割り当て、成功した場合は接続をテストします。
Task 7: Migrate Schema Metadata from Amazon RDS for PostgreSQL Instance to OCI Database with PostgreSQL
移行のテストに1つのテスト・スキーマを使用しています。
-
pg_dump
コマンドを実行して、メタデータ・スキーマのエクスポートを取得します。 -
次のコマンドを実行して、このメタデータ・ダンプをPostgreSQLOCI Database with PostgreSQLデータベースを含むターゲットOCI Databaseにリストアします。
-
次のコマンドを実行して、ターゲット・データベースにすべてのオブジェクトが作成されているかどうかを確認します。
タスク8: 移行のためのOCI GoldenGate ExtractおよびReplicatプロセスの構成
-
OCI GoldenGateコンソールに移動し、「管理」に移動して、「抽出」をクリックして初期ロード抽出プロセスを作成します。
-
「Extractの追加」で、「ファイル」として「ソース」を選択し、「ソース・タイプ」として「初期ロードにはファイルが必要です」を選択します。
-
Replicatパラメータは2文字のみをサポートするため、ファイル名のパラメータ・ファイルを3文字から2文字に入力して変更します。
-
次の図に示すように、デルタ同期の抽出プロセスを作成し、必要な情報を使用して登録します。
-
初期ロード抽出プロセスを開始し、初期ロードおよびLSNのレポート・ファイルを確認します。
-
初期ロード抽出から取得したコミット順序番号(CSN)を使用して、チェンジ・データ・キャプチャ(CDC)プロセスを開始します。
-
次の図に示すように、必要な情報を使用して、初期ロードのレプリケート・プロセスを作成および開始します。
-
初期レポートReplicatプロセスのレポートを確認します。
-
初期ロード後にデータ同期のレプリケートを作成し、次の図に示すように必要な情報の使用を開始します。
-
次のコマンドを実行して、データがレプリケートされているかどうか、ソースとターゲットをチェックします。
タスク9: 問題とトラブルシューティング
-
Issue1: OCI GoldenGateに関連するPostgreSQLインスタンスのソースAmazon RDSでパラメータが適切に定義されていない場合、次のエラーが発生する可能性があります:
PostgreSQLインスタンスのAmazon RDSで、パラメータ
logical_replication
が1に設定されていることを確認する必要があります。 -
問題2: OCI GoldenGateデプロイメント・バージョン21cには、配列のデータ型制限があります。次のエラーが表示される場合があります。
関連リンク
確認
- 著者 - Ashish Srivastava (Oracle North America Cloud Services - NACIE、プリンシパル・クラウド・アーキテクト)
その他の学習リソース
docs.oracle.com/learnで他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。
製品ドキュメントについては、Oracle Help Centerを参照してください。
Migrate Amazon RDS for PostgreSQL Database to OCI Database with PostgreSQL using OCI GoldenGate
G33815-01
Copyright ©2025, Oracle and/or its affiliates.