SharePlex と を使用して Oracle 8i または 9i から Amazon RDS for PostgreSQL に移行する AWS DMS - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SharePlex と を使用して Oracle 8i または 9i から Amazon RDS for PostgreSQL に移行する AWS DMS

作成者: Kumar Babu P G (AWS)

環境:PoC またはパイロット

ソース:データベース:リレーショナル

ターゲット: Amazon RDS for Postgre SQL/Amazon Aurora PostgreSQL

R タイプ: リアーキテクト

ワークロード: Oracle

テクノロジー: 移行、データベース

AWS サービス: Amazon RDS、Amazon Aurora

[概要]

このパターンでは、オンプレミスの Oracle 8i または 9i データベースを Amazon Relational Database Service (Amazon RDS) for PostgreSQL または Amazon Aurora Postgre に移行する方法について説明しますSQL。AWS Database Migration Service (AWS DMS) は Oracle 8i または 9i をソースとしてサポートしていないため、Quest はオンプレミスの 8i または 9i データベースから AWS と互換性のある中間 Oracle データベース (Oracle 10g または 11g) にデータを SharePlex レプリケートしますDMS。

中間 Oracle インスタンスから、スキーマ変換ツール (AWS SCT) と AWS AWSを使用して、AWSスキーマとデータが の PostgreSQL データベースに移行されますDMS。 Schema Conversion Tool この方法は、レプリケーションラグを最小限に抑えながら、ソース Oracle データベースからターゲット PostgreSQL DB インスタンスへのデータの継続的なストリーミングを実現するのに役立ちます。この実装では、ダウンタイムは、ターゲット PostgreSQL データベース上のすべての外部キー、トリガー、シーケンスを作成または検証するのにかかる時間に制限されます。

移行では、Oracle 10g または 11g がインストールされている Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを使用して、ソース Oracle データベースからの変更をホストします。AWS DMS は、この中間 Oracle インスタンスをソースとして使用して、データを Amazon RDS for PostgreSQL または Aurora Postgre にストリーミングしますSQL。オンプレミスの Oracle データベースから中間 Oracle インスタンスへのデータ複製を一時停止して再開できます。また、中間 Oracle インスタンスからターゲット PostgreSQL データベースに一時停止および再開できるため、データ検証ツールまたはカスタムデータ検証ツールを使用してAWSDMSデータを検証できます。

前提条件と制限

前提条件

制約事項

  • データベースのサイズ制限は 64 TB です

  • オンプレミスの Oracle データベースはエンタープライズエディションである必要があります

製品バージョン

  • ソースデータベース用の Oracle 8i または 9i

  • 中間データベースの Oracle 10g または 11g

  • PostgreSQL 9.6 以降

アーキテクチャ

ソーステクノロジースタック

  • Oracle 8i または 9i データベース 

  • クエスト SharePlex 

ターゲットテクノロジースタック

  • Amazon RDS for PostgreSQL または Aurora PostgreSQL

ソースアーキテクチャとターゲットアーキテクチャ

Database migration architecture from on-premises Oracle to AWS RDS or Aurora using AWS のサービス.

ツール

  • AWS DMSAWS Database Migration Service (AWS DMS) は、データベースを迅速かつ安全に移行するのに役立ちます。移行中でもソースデータベースが完全に維持され、このデータベースを利用するアプリケーションのダウンタイムは最小限に抑えられます。AWS DMS は、最も広く使用されている商用データベースとオープンソースデータベースとの間でデータを移行できます。 

  • AWS SCTAWS Schema Conversion Tool (AWS SCT) は、ソースデータベーススキーマと、ビュー、ストアドプロシージャ、関数を含むデータベースコードオブジェクトの大部分をターゲットデータベースと互換性のある形式に自動的に変換することで、異種データベースの移行を予測できるようにします。自動的に変換できないオブジェクトにはわかりやすいマークが付いていて、手動で変換して移行を完了できます。AWS SCT は、アプリケーションのソースコードをスキャンして埋め込みSQLステートメントを検出し、データベーススキーマ変換プロジェクトの一部として変換することもできます。このプロセス中、 はレガシー Oracle および SQL Server 関数をAWS同等の関数に変換してクラウドネイティブコードの最適化AWSSCTを実行し、データベースの移行中にアプリケーションをモダナイズするのに役立ちます。スキーマ変換が完了すると、 AWSSCTは組み込みのデータ移行エージェントを使用して、さまざまなデータウェアハウスから Amazon Redshift にデータを移行するのに役立ちます。

  • Quest SharePlexQuest SharePlex は、 Oracle-to-Oracleダウンタイムを最小限に抑え、データ損失のないデータを移動するためのデータレプリケーションツールです。

エピック

タスク説明必要なスキル
Amazon のネットワークを設定しますEC2。

仮想プライベートクラウド (VPC)、サブネット、インターネットゲートウェイ、ルートテーブル、セキュリティグループを作成します。

AWS SysAdmin
新しいEC2インスタンスを作成します。

EC2 インスタンスの Amazon マシンイメージ (AMI) を選択します。インスタンスサイズを選択し、インスタンスの詳細を設定します。インスタンスの数 (1)、前のステップの VPCとサブネット、パブリック IP の自動割り当て、その他のオプションです。ストレージを追加し、セキュリティグループを設定し、インスタンスを起動します。プロンプトが表示されたら、次のステップのためにキーペアを作成して保存します。

AWS SysAdmin
EC2 インスタンスに Oracle をインストールします。

ライセンスと必要な Oracle バイナリを取得し、EC2インスタンスに Oracle 10g または 11g をインストールします。

DBA
タスク説明必要なスキル
をセットアップします SharePlex。

Amazon EC2インスタンスを作成し、Oracle 8i または 9i と互換性のある SharePlex バイナリをインストールします。

AWS SysAdmin, DBA
データレプリケーションを設定します。

SharePlex ベストプラクティスに従って、オンプレミスの Oracle 8i/9i データベースから Oracle 10g/11g インスタンスへのデータレプリケーションを設定します。

DBA
タスク説明必要なスキル
をセットアップAWSしますSCT。

新しいレポートを作成し、ソースとして Oracle に接続し、ターゲットとして PostgreSQL に接続します。プロジェクト設定で、SQLスクリプトタブを開き、ターゲットSQLスクリプトを複数のファイルに変更します。

DBA
Oracle データベーススキーマを変換します。

アクションタブで、レポートの生成、スキーマの変換、 としての保存を選択しますSQL。

DBA
によって生成されたSQLスクリプトを変更しますAWSSCT。DBA
タスク説明必要なスキル
Amazon RDS DB インスタンスを作成します。

Amazon RDSコンソールで、新しい PostgreSQL DB インスタンスを作成します。

AWS SysAdmin, DBA
DB インスタンスを設定します。

DB エンジンのバージョン、DB インスタンスクラス、マルチ AZ 配置、ストレージタイプ、ストレージの割り当てを指定します。DB インスタンス識別子、マスターユーザー名、マスターパスワードを入力します。

AWS SysAdmin, DBA
ネットワークとセキュリティを設定します。

VPC、サブネットグループ、パブリックアクセシビリティ、アベイラビリティーゾーン設定、セキュリティグループを指定します。

AWS SysAdmin, DBA
データベースオプションを設定します。

データベース名、ポート、パラメータグループ、暗号化、マスターキーを指定します。

AWS SysAdmin, DBA
バックアップを設定します。

バックアップ保持期間、バックアップウィンドウ、開始時刻、期間、およびタグをスナップショットにコピーするかどうかを指定します。 

AWS SysAdmin, DBA
モニタリングオプションを設定します。

拡張モニタリングとパフォーマンスインサイトの有効または無効にします。

AWS SysAdmin, DBA
メンテナンスオプションを設定します。

マイナーバージョンの自動マイナーアップグレード、メンテナンスウィンドウ、および開始日、時刻、および期間を指定します。

AWS SysAdmin, DBA
から移行前スクリプトを実行しますAWSSCT。

Amazon RDSインスタンスで、create_database.sql、create_sequence.sql、create_table.sql、create_view.sql、create_function.sql のスクリプトを実行します。

AWS SysAdmin, DBA
タスク説明必要なスキル
でレプリケーションインスタンスを作成しますAWSDMS。

名前、インスタンスクラス、 VPC (EC2インスタンスと同じ)、マルチ AZ、パブリックアクセシビリティのフィールドに入力します。詳細設定セクションで、割り当てられたストレージ、サブネットグループ、アベイラビリティーゾーン、VPCセキュリティグループ、および AWS Key Management Service (AWS KMS) ルートキーを指定します。

AWS SysAdmin, DBA
ソースデータベースのエンドポイントを作成します。

エンドポイント名、タイプ、ソースエンジン (Oracle)、サーバー名 (Amazon EC2プライベートDNS名)、ポート、SSLモード、ユーザー名、パスワード、SID、、 VPC (レプリケーションインスタンスVPCを持つ を指定)、レプリケーションインスタンスを指定します。接続をテストするには、[テストを実行]を選択し、エンドポイントを作成します。また、次の詳細設定、 maxFileSize および numberDataTypeスケールを設定することもできます。

AWS SysAdmin, DBA
AWS DMS レプリケーションタスクを作成します。

タスク名、レプリケーションインスタンス、ソースとターゲットのエンドポイント、レプリケーションインスタンスを指定します。移行タイプについては、[既存のデータを移行し、実行中の変更をリプリケートする] を選択します。「作成時にタスクを開始」チェックボックスをクリアします。

AWS SysAdmin, DBA
AWS DMS レプリケーションタスクの設定を行います。

ターゲットテーブル作成モードには、 [何もしない] を選択します。全ロードが完了したらタスクを停止して、プライマリキーを作成します。制限モードまたはフルLOBモードを指定し、コントロールテーブルを有効にします。オプションで、 CommitRate 詳細設定を設定できます。

DBA
テーブルマッピングを設定します。

テーブルマッピングセクションで、移行に含まれるすべてのスキーマのすべてのテーブルを対象とするインクルードルールを作成し、除外ルールを作成します。スキーマ、テーブル、列の名前を小文字に変換する 3 つの変換ルールを追加し、特定の移行に必要なその他のルールを追加します。

DBA
タスクの開始

レプリケーションタスクを開始します。全ロードが実行されていることを確認します。プライマリ Oracle データベースALTERSYSTEMSWITCHLOGFILEで を実行して、タスクを開始します。

DBA
から移行中スクリプトを実行しますAWSSCT。

Amazon RDS for Postgre でSQL、create_index.sql と create_constraint.sql のスクリプトを実行します。

DBA
タスクを再起動して、変更データキャプチャ () を続行しますCDC。

Amazon RDS for PostgreSQL DB インスタンスで、 を実行してタスクを再起動しVACUUM、キャッシュされたCDC変更AWSDMSを適用します。

DBA
タスク説明必要なスキル
AWS DMS ログとメタデータテーブルを確認します。

エラーを検証し、必要に応じて修正します。

DBA
Oracle の依存関係をすべて停止します。

Oracle データベースのリスナーをシャットダウンし、 ALTER SYSTEM SWITCH を実行しますLOGFILE。アクティビティが表示されない場合は、AWSDMSタスクを停止します。

DBA
から移行後のスクリプトを実行しますAWSSCT。

Amazon RDS for Postgre でSQL、create_foreign_key_constraint.sql と create_triggers.sql のスクリプトを実行します。

DBA
追加の Amazon RDS for PostgreSQL ステップを完了します。

必要に応じて Oracle に合わせてシーケンスを増分し、 VACUUMと を実行しANALYZE、コンプライアンスのためにスナップショットを作成します。

DBA
Amazon RDS for Postgre への接続を開きますSQL。

Amazon RDS for Postgre からAWSDMSセキュリティグループを削除SQLし、本番稼働用セキュリティグループを追加し、アプリケーションを新しいデータベースにポイントします。

DBA
AWS DMS リソースをクリーンアップします。

エンドポイント、レプリケーションタスク、レプリケーションインスタンス、インスタンスを削除しますEC2。

SysAdmin, DBA

関連リソース