スキップしてコンテンツを表示

Amazon RDS DB インスタンスにデータをインポートする方法を教えてください。

所要時間2分
0

外部のデータベースから Amazon Relational Database Service (Amazon RDS) インスタンスに、最小限のダウンタイムでデータをインポートしたいと考えています。

解決策

データインポートの準備

**注:**データをインポートするときに発生するダウンタイムは、ソースデータベースのサイズとデータベースエンジンのタイプによって異なります。

すべての Amazon RDS データのインポートおよびエクスポート操作について、以下のアクションを実行してください。

  • 必要に応じて、圧縮と複数のスレッドを使用して、データを並列でロードおよびアンロードします。大量のデータを並列でロードする場合は、データをインポートする前にクライアントマシンに十分なリソースがあることを確認してください。
  • 対象の Amazon RDS DB インスタンスのバックアップ保持期間をゼロに設定すると、自動バックアップが無効になり、大量のデータロードのパフォーマンスが向上します。次に、RDS DB インスタンスを再起動してこの変更を適用します。
    **注:**本番インスタンスのバックアップはオフにしないことをお勧めします。バックアップをオフにすると、ポイントインタイムリカバリができなくなり、DB インスタンスの以前に自動化されたスナップショットが削除され、削除されたスナップショットのリカバリができなくなります。
  • データのロードが完了したら、自動バックアップを有効にします。データロードの重要な段階で DB スナップショットを作成することをお勧めします。これにより、必要に応じてスナップショットからインスタンスを復元できます

マルチ AZ データロードの書き込み操作によるオーバーヘッドを減らすには、マルチ AZ をオフにします。

**注:**すべての本稼働 Amazon RDS DB インスタンスにマルチ AZ 機能を使用することがベストプラクティスです。データのロードが完了したら、マルチ AZ を必ず有効にしてください。

オンプレミス環境から AWS にデータをインポートするには、AWS Database Migration Service (AWS DMS) を使用します。AWS DMS はダウンタイムを最小限に抑えながら、同種のデータベース間の移行も、異なるデータベース間の移行もサポートします

Amazon RDS for MySQL にデータをインポートする

外部 MySQL データベースからデータをインポートするには、「外部 MySQL データベースから Amazon RDS for MySQL DB インスタンスへのデータのインポート」を参照してください。

Amazon RDS for MariaDB にデータをインポートする

外部の MariaDB データベースからデータをインポートするには、「外部の MariaDB データベースから Amazon RDS for MariaDB DB インスタンスへのデータのインポート」を参照してください。

Amazon RDS for PostgreSQL にデータをインポートする

外部の PostgreSQL データベースからデータをインポートするには、Amazon Elastic Compute Cloud (Amazon EC2) または Amazon Simple Storage Service (Amazon S3) のいずれかを使用します。

**注:**Amazon S3 を使用してデータをインポートできるのは、PostgreSQL バージョン 10.7 以降を実行している場合だけです。

詳細については、PostgreSQL ウェブサイトの「pg_dump」、「psql」、「copy」を参照してください。

Amazon RDS for Oracle にデータをインポートする

外部の Oracle データベースからデータをインポートするには、Oracle SQL Developer、Oracle Datapump、または AWS DMS を使用してください。

大規模なデータベースの場合は、データベースリンクを使用してデータポンプのエクスポートを実行し、インスタンスに定義されているディレクトリにインポートします。エクスポートパラメータを指定する場合は、データベースリンクが必要となります。詳細については、Oracle ウェブサイトの「データベースリンクの作成」、「Oracle Data Pumpエクスポート」、「Oracle Data Pumpインポート」、および「Oracle Data Pumpエクスポートパラメータについて」を参照してください。

Amazon S3 で Oracle Data Pump を使用するには、「Oracle Data Pump と S3 バケットによるデータのインポート」を参照してください。データベースリンクで Oracle Data Pump を使用するには、「Oracle Data Pump とデータベースリンクによるデータのインポート」を参照してください。

Oracle Data Pump の詳細については、「Oracle Data Pump の概要」を参照してください。impdp コマンドの詳細については、Oracle ウェブサイトの「Oracle Data Pump のインポート開始 」を参照してください。

Amazon RDS for SQL Server にデータをインポートする

外部の SQL Server データベースからデータをインポートするには、ネイティブバックアップと復元を使用します

注:ネイティブバックアップと復元の制限事項と推奨事項を必ず確認してください

SQL Server Management Studio、Transact-SQL、または PowerShell を使用して、データベースの完全バックアップを作成できます。詳細については、SQL Server ウェブサイトの「データベースの完全バックアップの作成」を参照してください。

次に、rds_restore_database ストアドプロシージャを使用して Amazon RDS for SQL Server に復元します。

Aurora MySQL 互換にデータをインポートする

外部の MySQL データベースから Amazon Aurora MySQL 互換エディションにデータをインポートするには、論理移行または物理移行を使用します。

**注:**物理移行を選択した場合は、制限事項と考慮事項を確認してください。

**mysqldump **や mydumper などのネイティブツールを使用して MySQL データベースのコピーを作成できます。Aurora MySQL 互換のバイナリログのレプリケーションを使用すると、ダウンタイムを短縮できます。

**注:**すべての移行オプションにおいて、必ずすべてのソーステーブルを、動的な行フォーマットを使用して InnoDB ストレージエンジンに変換してください。これにより、移行の速度が速くなります。詳細については、「Aurora MySQL 互換 DB クラスターへのデータの移行」を参照してください。

大規模なデータベースを移行する場合は、mydumper と myloader を使用してマルチスレッドのダンプとインポートを実行します

Aurora PostgreSQL 互換にデータをインポートする

外部の PostgreSQL データベースからデータをインポートするには、AWS DMS または Amazon S3 のいずれかを使用してください。

注: Amazon S3 を使用してデータをインポートできるのは、データベースで Aurora PostgreSQL 互換エディション 10.14、11.9、12.4 またはそれ以降のバージョンが実行されている場合だけです。

ソースデータベースのコピーを作成するには、pg_dump や pg_restore などのネイティブツールを使用します。

Aurora PostgreSQL 互換 DB インスタンスにデータをインポートするには、以下のアクションを実行します。

関連情報

Amazon RDS のベストプラクティス

レプリケーションを使用して MySQL DB インスタンスからデータをエクスポートする

PostgreSQL データベースを Amazon RDS と Amazon Aurora に移行するためのベストプラクティス

コメントはありません

関連するコンテンツ