AWS DMS と を使用して Oracle on Amazon EC2 から Amazon RDS for MySQL に移行する AWS SCT - AWS 規範ガイダンス

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

AWS DMS と を使用して Oracle on Amazon EC2 から Amazon RDS for MySQL に移行する AWS SCT

作成者: Anil Kunapareddy (AWS) と Harshad Gohil

概要

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスで Oracle データベースを管理するには、リソースが必要で、コストがかかる可能性があります。これらのデータベースを DBSQL インスタンスの Amazon Relational Database Service (Amazon RDS) に移動すると、全体的な IT 予算を最適化することで、ジョブが簡素化されます。Amazon RDS for MySQL には、マルチ AZ、スケーラビリティ、自動バックアップなどの機能も用意されています。 

このパターンでは、Amazon 上のソース Oracle データベースをEC2ターゲット Amazon RDS for MySQL DB インスタンスに移行する手順を示します。AWS Database Migration Service (AWS DMS) を使用してデータを移行し、AWSSchema Conversion Tool (AWS SCT) を使用してソースデータベースのスキーマとオブジェクトを Amazon RDS for My と互換性のある形式に変換しますSQL。

前提条件と制限

前提条件

  • アクティブなAWSアカウント

  • インスタンスとリスナーサービスが ARCHIVELOG モードで実行されているソースデータベース

  • データ移行に十分なストレージを備えたターゲット Amazon RDS for MySQL データベース

制約事項

  • AWS DMS はターゲットデータベースにスキーマを作成しません。作成する必要があります。スキーマ名がすでに存在している必要があります。ソーススキーマのテーブルは、 がターゲットインスタンスへの接続AWSDMSに使用するユーザー/スキーマにインポートされます。複数のスキーマに移行する必要がある場合、複数のレプリケーションタスクを作成する必要があります。

製品バージョン

アーキテクチャ

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

  • EC2インスタンス上の Oracle データベース  

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

  • Amazon RDS for MySQL DB インスタンス

データ移行アーキテクチャ

AWS DMS を使用して Oracle on Amazon から EC2 Amazon RDS for My に移行するSQL

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

AWS DMS と AWSSCTを使用して Oracle on Amazon から EC2 Amazon RDS for My に移行するSQL

ツール

  • AWS DMS - AWS Database Migration Service (AWS DMS) は、オンプレミス、Amazon RDS DB インスタンス、またはEC2インスタンス上のデータベースから、Amazon RDS for MySQL や EC2 インスタンスなどの AWSサービスのデータベースにデータを移行するために使用できるウェブサービスです。データベースを AWSサービスからオンプレミスデータベースに移行することもできます。異種または同種のデータベースエンジン間でデータを移行できます。

  • AWS SCT - AWS Schema Conversion Tool (AWSSCT) は、ソースデータベーススキーマと、ビュー、ストアドプロシージャ、関数を含むデータベースコードオブジェクトの大部分を、ターゲットデータベースと互換性のある形式に自動的に変換することで、異種データベースの移行を予測可能にします。を使用してデータベーススキーマとコードオブジェクトを変換した後SCT、 AWS AWSDMSを使用してソースデータベースからターゲットデータベースにデータを移行し、移行プロジェクトを完了できます。

エピック

タスク説明必要なスキル

ソースデータベースとターゲットデータベースについて、バージョンとエンジンを特定します。

DBA/開発者

DMS レプリケーションインスタンスを特定します。

DBA/開発者

ストレージ要件 (ストレージタイプと容量) を特定します。

DBA/開発者

レイテンシーや帯域幅などのネットワーク要件を特定します。

DBA/開発者

Oracle 互換性リストと容量要件に基づいて、ターゲットサーバーインスタンスのハードウェア要件を特定します。

DBA/開発者

ソースおよびターゲットのデータベースのネットワークアクセスセキュリティ要件を特定します。

DBA/開発者

AWS SCT および Oracle ドライバーをインストールします。

DBA/開発者

バックアップ戦略を決定します。

DBA/開発者

可用性の要件を決定します。

DBA/開発者

アプリケーションの移行/切り替え戦略を特定します。

DBA/開発者

容量、ストレージ、ネットワーク機能に基づいて、適切な DB インスタンスタイプを選択します。

DBA/開発者
タスク説明必要なスキル

仮想プライベートクラウド () を作成しますVPC。ソース、ターゲット、レプリケーションインスタンスは同じ にある必要がありますVPC。これらを同じアベイラビリティゾーンに配置するのも良いでしょう。

開発者

データベースアクセスに必要なセキュリティグループを作成します。

開発者

キーペアを生成して設定します。

開発者

サブネット、アベイラビリティーゾーン、CIDRブロックを設定します。

開発者
タスク説明必要なスキル

必要なユーザーとロールEC2を使用して Oracle Database を Amazon にインストールします。

DBA

次の列の 3 つのステップを実行して、EC2インスタンスの外部から Oracle にアクセスします。

  1. のローカルホストtnsnamesを Amazon EC2パブリック に変更しますDNS。

  2. のローカルホストlistenerを Amazon EC2パブリック に変更しますDNS。

  3. リスナーを停止して再起動します。

DBA

Amazon EC2を再起動すると、パブリックが変更されますDNS。「tnsnames」と「listenerDNS」で Amazon EC2パブリックを更新するか、Elastic IP アドレスを使用してください。

DBA/開発者

レプリケーションEC2インスタンスと必要なクライアントがソースデータベースにアクセスできるように、インスタンスセキュリティグループを設定します。

DBA/開発者
タスク説明必要なスキル

Amazon RDS for MySQL DB インスタンスを設定して起動します。

開発者

Amazon RDS for MySQL DB インスタンスに必要なテーブルスペースを作成します。

DBA

レプリケーションインスタンスと必要なクライアントがターゲットデータベースにアクセスできるようにセキュリティグループを設定します。

開発者
タスク説明必要なスキル

AWS SCT および Oracle ドライバーをインストールします。

開発者

適切なパラメータを入力して、ソースとターゲットに接続します。 

開発者

スキーマ変換レポートを生成します。

開発者

コードとスキーマ、特にテーブルスペースと引用符を必要に応じて修正し、ターゲットデータベースで実行します。

開発者

データを移行する前に、ソースとターゲットでスキーマを検証します。

開発者
タスク説明必要なスキル

全ロードおよび変更データキャプチャ (CDC) または のみの場合はCDC、追加の接続属性を設定する必要があります。

開発者

AWS DMS ソース Oracle データベース定義で指定されたユーザーには、必要なすべての権限が付与されている必要があります。完全なリストについては、 https://docs.aws.amazon.com/dms/latest/userguide/CHAP「_Source.Oracle.html#CHAP_Source.Oracle.Self-Managed」を参照してください。

DBA/開発者

ソース DB での補足的なログ記録を有効にします。

DBA/開発者

全ロードおよび変更データキャプチャ (CDC) または のみの場合はCDC、ソースデータベースで ARCHIVELOG モードを有効にします。

DBA

ソースエンドポイントとターゲットエンドポイントを作成してテストします。

開発者

エンドポイントが正常に接続された後、レプリケーションタスクを作成します。

開発者

タスクCDCで全ロードと CDCのみ (または) を選択し、連続レプリケーションのみ (または) 全ロードと継続的な変更の変更をそれぞれキャプチャします。

開発者

レプリケーションタスクを実行し、Amazon CloudWatch ログをモニタリングします。

開発者

ソースデータベースとターゲットデータベースのデータを検証します。

開発者
タスク説明必要なスキル

アプリケーション移行戦略の手順に従ってください。

DBA、開発者、アプリ所有者

アプリケーションのカットオーバー/スイッチオーバー戦略に従ってください。

DBA、開発者、アプリ所有者
タスク説明必要なスキル

ソースデータベースとターゲットデータベースにあるスキーマとデータを検証します。

DBA/開発者

移行の所要時間、手動とツールの比率、コスト削減などのメトリクスを収集します。

DBA/Developer/AppOwner

プロジェクト文書とアーティファクトをレビューして検証します。

DBA/Developer/AppOwner

一時AWSリソースをシャットダウンします。

DBA/開発者

プロジェクトを終了し、フィードバックを提供します。

DBA/Developer/AppOwner

関連リソース