翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS DMS を使用して Oracle PeopleSoft データベースを AWS に移行する
作成者: sampath kathirvel (AWS)
概要
「Oracle PeopleSoft
Oracle データベースを Amazon RDS に移行すると、Amazon Web Services (AWS) がバックアップタスクと高可用性セットアップを処理するので、お客様は PeopleSoft アプリケーションとその機能のメンテナンスに集中できます。移行プロセス中に考慮すべき主な要因の包括的なリストについては、AWS 規範ガイダンス の「Oracle データベースの移行戦略」を参照してください。
このパターンは、AWS Database Migration Service (AWS DMS) とその変更データキャプチャ (CDC) 特徴量を備えた Oracle Data Pump を使用して、オンプレミスの Oracle データベースを Amazon RDS
Oracle PeopleSoft などの重要な ERP アプリケーションを移行する際には、ダウンタイムを最小限に抑えることが重要です。AWS DMS では、ソースデータベースからターゲットデータベースへのフルロードと連続レプリケーションの両方をサポートすることで、ダウンタイムを最小限に抑えます。AWS DMS では、移行のリアルタイムモニタリングとログ記録も提供されるため、ダウンタイムの原因となる問題を特定して解決することを支援します。
AWS DMS で変更を複製する場合、AWS DMS がデータベースログから変更を読み取るための開始点として、時刻またはシステム変更番号 (SCN) を指定する必要があります。AWS DMS がこれらの変更にアクセスすることを保証するには、指定された期間でサーバーでこれらのログにアクセスできるようにしておくことが重要です。
前提条件と制限
前提条件
ターゲットデータベースとして AWS クラウド環境内の Amazon RDS for Oracle データベースをプロビジョニングしました。
オンプレミスまたは AWS クラウドの Amazon Elastic Compute Cloud (Amazon EC2) 上で稼働している Oracle PeopleSoft データベース。
注記
このパターンは、オンプレミスから AWS に移行するように設計されていますが、Amazon EC2 インスタンスで Oracle Database を使用してテストされています。オンプレミスから移行するには、適切なネットワーク接続を設定する必要があります。
スキーマの詳細です。Oracle PeopleSoft アプリケーションを Amazon RDS for Oracle に移行する場合、移行する Oracle データベーススキーマ (
SYSADM
など) を特定する必要があります。移行プロセスを開始する前に、スキーマに関する以下の詳細情報を収集します。サイズ
オブジェクトタイプごとのオブジェクトの数
無効なオブジェクトの数。
この情報は移行プロセスに役立ちます。
制約事項
このシナリオは PeopleSoft DEMO データベースでのみテストされています。大規模なデータセットではテストされていません。
アーキテクチャ
次の図表では、ソースデータベースとして Oracle データベースを実行するインスタンス、及び ターゲットデータベースとして Amazon RDS for Oracle を実行するインスタンスを示しています。データは、Oracle Data Pump を使用してソース Oracle データベースからターゲット Amazon RDS for Oracle データベースにエクスポートおよびインポートされ、AWS DMS を使用して CDC が変更された場合にレプリケートされます。

最初のステップでは、Oracle Data Pump を使用してソースデータベースからデータを抽出し、そのデータを Amazon RDS for Oracle データベースターゲットに送信します。
データは、ソースデータベースから AWS DMS のソースエンドポイントに送信されます。
ソースエンドポイントから AWS DMS レプリケーションインスタンスにデータが送信され、そこでレプリケーションタスクが実行されます。
レプリケーションタスクが完了する後、データが AWS DMS のターゲットエンドポイントに送信されます。
ターゲットエンドポイントから、データは Amazon RDS for Oracle データベースインスタンスに送信されます。
ツール
AWS サービス
「AWS Database Migration Service (AWS DMS)」 を使用して、データストアを AWS クラウドへ、またはクラウドセットアップとオンプレミスセットアップの組み合わせの間に移行します。
「OracleのAmazon Relational Database Service (Amazon RDS)」 によって、AWS クラウドで Oracleリレーショナルデータベースをセットアップ、運用、スケーリングができます。
その他のサービス
「Oracle Data Pump
」 を使用すると、データやメタデータを一つのデータベースから別のデータベースに高速に移動することを支援します。
ベストプラクティス
LOB への移行
ソースデータベースに、ターゲットデータベースに移行する必要のあるラージバイナリオブジェクト (LOB) が含まれている場合、AWS DMS には次のオプションがあります。
Full LOB mode - サイズにかかわらず、 AWS DMS はすべての LOB をソースからターゲットに移行します。移行が遅くなりますが、データが切り捨てられないという利点があります。パフォーマンスを向上させるには、新しいレプリケーションインスタンスに別のタスクを作成して、LOB が数メガバイトを超えるテーブルを移行できます。
制限付き LOB モード — LOB 列データの最大サイズを指定します。これにより、AWS DMS はリソースを事前に割り当て、LOB を一括適用できます。LOB 列のサイズがタスクで指定されたサイズを超える場合、AWS DMS はデータを切り捨てて AWS DMS ログファイルに警告を送信します。LOB データサイズが制限された LOB サイズ内にある場合、制限付き LOB モードを使用することでパフォーマンスを向上させることができます。
インライン LOB モード — 小さい LOB と大きな LOB の両方を複製することで、データを切り捨てたり、タスクのパフォーマンスを低下させたりすることなく LOB を移行できます。まず、InlineLobMaxSize パラメーターの値を指定します。このパラメーターは、フル LOB モードが true に設定されている場合にのみ使用できます。AWS DMS タスクでは、小さな LOB をインラインで転送するため、効率が向上します。AWS DMS では、ソーステーブルからルックアップを実行して、大きな LOB を移行します。ただし、インライン LOB モードは全ロードフェーズでのみ機能します。
シーケンス値の生成
AWS DMS による変更データキャプチャプロセスでは、増分シーケンス番号はソースデータベースから複製されないことに注意します。シーケンス値の不一致を避けるには、すべてのシーケンスのソースから最新のシーケンス値を生成し、それをターゲット Amazon RDS for Oracle データベースに適用する必要があります。
認証情報管理
AWS リソースを保護するために、AWS Identity and Access Management (IAM) の「ベストプラクティス」に従うことをお勧めします。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
テンプレートをダウンロードする。 | 「DMS_Instance.yaml | クラウド管理者、DBA |
スタックの作成を開始します。 |
| クラウド管理者、DBA |
パラメータを指定します。 |
| クラウド管理者、DBA |
スタックを作成します。 |
プロビジョニングは約 5 ~ 10 分で完了します。AWS CloudFormation スタックページに CREATE_COMPLETE と表示されたら完了です。 | クラウド管理者、DBA |
エンドポイントをセットアップします。 |
| クラウド管理者、DBA |
接続をテストします。 | ソースエンドポイントとターゲットエンドポイントのステータスにアクティブになったら、接続をテストします。各エンドポイント (ソースとターゲット) でテストを実行を選択し、ステータスが成功と表示されることを確認します。 | クラウド管理者、DBA |
タスク | 説明 | 必要なスキル |
---|---|---|
SCN を生成します。 | ソースデータベースがアクティブでアプリケーションで使用中になったら、Oracle Data Pump でデータエクスポートを開始します。まず、Oracle Data Pump によるエクスポート時のデータ整合性を保つため、また AWS DMS の変更データの開始点として、ソースデータベースからシステム変更番号 (SCN) を生成する必要があります。 ソースデータベースから現在の SCN を生成するには、次の SQL ステートメントを入力します。
生成された SCN を保存して、データをエクスポートしたり、AWS DMS レプリケーションタスクを作成したりするときに使用します。 | DBA |
パラメータファイルを作成します。 | スキーマをエクスポートするためのパラメータファイルを作成するには、次のコードを使用できます。
注記また、要件に基づいて次のコマンド
| DBA |
スキーマをエクスポートします。 | エクスポートを実行するには、
| DBA |
タスク | 説明 | 必要なスキル |
---|---|---|
ダンプファイルを、ターゲットインスタンスに転送します。 |
または、Data Pump ファイルを「Amazon Simple Storage Service (Amazon S3) ターゲットの DB インスタンスの Amazon RDS マスターユーザーに接続する
| DBA |
データベースリンクをテストします。 | データベースリンクをテストして、sqlplus を使用して Amazon RDS for Oracle のターゲットデータベースに接続できることを確認します。
| DBA |
ダンプファイルをターゲットデータベースに転送します。 | ダンプファイルを Amazon RDS for Oracle データベースにコピーするには、
次のスクリプトでは、ソースのインスタンスから
| DBA |
ターゲットデータベース内のダンプファイルを一覧表示します。 | PL/SQL プロシージャが完了したら、次のコードを使用して Amazon RDS for Oracle データベースにデータダンプファイルを一覧表示できます。
| DBA |
ターゲットデータベースでインポートを開始します。 | インポートプロセスを開始する前に、データダンプファイルを使用して、ターゲット Amazon RDS for Oracle データベースにロール、スキーマ、テーブルスペースを設定します。 インポートを実行するには、Amazon RDS マスターユーザーアカウントでターゲットデータベースにアクセスし、Amazon RDS for Oracle Database インポートを開始するには、次のコードを使用します。
インポートを正常に完了させるには、インポートログファイルにエラーがないかどうかを確認し、オブジェクト数、行数、無効なオブジェクトなどの詳細を確認します。無効なオブジェクトがある場合は、それらを再コンパイルします。さらに、ソースとターゲットのデータベースオブジェクトを比較して、一致することを確認します。 | DBA |
タスク | 説明 | 必要なスキル |
---|---|---|
レプリケーションタスクを作成します。 | 次のステップを使用して AWS DMS レプリケーションタスクを作成します。
タスクを作成する後、CDC スタートモードで提供した SCN から Amazon RDS for Oracle データベースインスタンスに CDC を移行します。CloudWatch ログを確認して確認することもできます。 | クラウド管理者、DBA |
タスク | 説明 | 必要なスキル |
---|---|---|
データ転送を検証します。 | AWS DMS タスクが開始されたら、タスクページのテーブル統計タブをチェックして、データに加えられた変更を確認できます。 進行中のレプリケーションのステータスは、コンソールのデータベース移行タスクページでモニタリングできます。 詳細については、「 AWS DMS データの検証」 を参照してください。 | クラウド管理者、DBA |
タスク | 説明 | 必要なスキル |
---|---|---|
レプリケーションを開始します。 | レプリケーション手順を中止し、ソースアプリケーションサービスを停止します。 | クラウド管理者、DBA |
PeopleSoft ミドルティアを起動します。 | ターゲットの PeopleSoft ミドルティアアプリケーションを AWS で起動し、最近移行した Amazon RDS for Oracle データベースに転送します。 アプリケーションにアクセスすると、すべてのアプリケーション接続が Amazon RDS for Oracle データベースと確立されていることに気付くはずです。 | データベース管理者、PeopleSoft 管理者 |
ソースデータベースをオフにします。 | ソースデータベースへの接続がなくなったことを確認したら、オフにできます。 | DBA |
関連リソース
追加情報
Amazon S3 を使用してファイルを転送する
Amazon S3 にファイルを転送するには、AWS CLI 、mたは (CLI)、 Amazon S3 コンソールを使用できます。ファイルを Amazon S3 に転送したら、Amazon RDS for Oracle インスタンスを使用して Amazon S3 からデータポンプファイルをインポートできます。
代替方法として Amazon S3 統合を使用してダンプファイルを転送することを選択した場合は、次の手順を実行します。
S3 バケットを作成する。
Oracle データパンプを使用して、ソースデータベースからデータをエクスポートします。
S3 バケットにデータパンプファイルをアップロードします。
S3 バケットから、ターゲットの Amazon RDS for Oracle Database にデータポンプファイルをダウンロードします。
Data Pump ファイルを使用してインポートを実行します。
注記
S3 インスタンスと RDS インスタンス間で大きなデータファイルを転送するには、Amazon S3 Transfer Acceleration 機能を使用することをお勧めします。
補足ロギングを有効にする
継続的なレプリケーションのソースデータベースで「追加ロギング
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;