Amazonrds-mysql-db-export-import
Amazon RDS-MySQL DBエクスポートインポート
Amazon RDS MySQLは、DBにデータをインポートし、DBからデータをエクスポートする簡単な方法を提供します。 MySQLデータベースに正常に接続できたら、CLIツールを使用してインポートおよびエクスポートコマンドを実行し、RDSデータベースに出入りする他のソースからデータを取得できます。 以下は、データをAmazon RDS-MySQLデータベースにインポートする方法を決定する際に考慮すべきシナリオです。
既存のMySQLデータベースから
既存のMySQL DBは、オンプレミスまたは別のEC2インスタンスに存在できます。 以下に図を示します。
オンプレミスDBからバックアップを作成する
最初のステップとして、以下のコマンドを使用してオンプレミスデータベースのバックアップを作成します。
backupfile.sqlという名前のファイルが作成されます。このファイルには、使用するデータとともにテーブル構造が含まれています。
S3にバックアップファイルを保存します。
上記で作成したバックアップファイルを、ターゲットRDS MySQL DBデータベースが存在する同じリージョンの事前に決定されたAmazon S3バケットにアップロードします。 アップロード方法については、https://www.finddevguides.com/amazon_web_services/amazon_web_services_s3 [このリンク]をフォローしてください。
Amazon S3からRDS- MySQLデータベースへのデータのインポート
次のAmazon CLIコマンドを使用して、S3からMySQL DBにデータをインポートできます。
別のRDS-MySQLインスタンスから
既存のRDS MYSQL DBのデータを別のRDS MYSQL DBに取り込む場合があります。 たとえば、災害復旧DBを作成したり、ビジネスレポートなどのためにのみDBを作成したりします。 このようなシナリオでは、ソースDBのコピーであるリードレプリカを作成し、そのリードレプリカを新しいDBインスタンスに昇格させます。 データをコピーするときに、元のソースDBから直接大量の読み取りを防ぐために使用されます。
リードレプリカを作成する
リードレプリカをDBインスタンスに昇格させる
これでレプリカができたので、それをスタンドアロンDBインスタンスに昇格させることができます。 これは、RDS – Mysql DBから新しいデータにデータをインポートするという最終的なニーズに対応します。 次のコマンドは、dbインスタンスへのリードレプリカの昇格を完了するために使用されます。
任意のデータベースから
他のデータベースからAmazon RDS – MySQLにデータをインポートするには、Amazon DMSとも呼ばれるAmazon Data Migration Serviceを使用する必要があります。 スキーマ変換ツールを使用して、既存のデータベースをMYSQLプラットフォームに変換します。 次の図は、全体的なプロセスを説明しています。 また、前のセクションで説明したのと同様の複製原理で動作します。
MySQLからのデータのエクスポート
Amazon RDS Mysql DBからのデータのエクスポートは、先ほど見たのと同じレプリケーションの原則に基づいて動作する単純なプロセスです。 以下は、エクスポートプロセスを実行する手順です。
- Amazon RDSの外部で実行されているMySQLのインスタンスを起動します。
- MySQL DBインスタンスをレプリケーションソースとして指定します。
- mysqldumpを使用して、データベースをAmazon RDSインスタンスからAmazon RDSの外部のインスタンスに転送します。
以下はmysqldumコマンドのコードです