1
大規模なMySQLデータベースをRDSに移行するにはどうすればよいですか?
私はすでにこれを少し調べました。Stack Overflowにも同様の質問があることに気づき、Amazon自身もここに助言を提供する有用なドキュメントを持っています。 http://aws.amazon.com/articles/2933 私の懸念は次のとおりです。 Amazonではmysqldump、「1 GB未満」と定義されている「少量のデータ」のみに使用することを推奨しています。移行しようとしているデータベースが20GBを超えています。 mysqldumpただし、の良い点の1つは、--single-transactionフラグがあることです。これにより、特定の時点と一貫したDB状態を確保できます。 大量のデータの場合、Amazonの推奨は、データベースをフラット(CSVなど)ファイルにエクスポートし、それを使用mysqlimportしてそれらをRDSにインポートすることです。ただし、これを行う方法を知る最良の方法は、SELECT ... INTO OUTFILE一度に1つのテーブルのみを操作するコマンドを使用することです。もちろん、これの欠点は、の一貫性が保証されないことです--single-transaction。 DB全体を一時的に停止することで一貫性を確保できると思います。でも、なるべく避けたいです。 大容量(> 20GB)データベースをフラットファイルにして使用できるようにする最良の方法は何mysqlimportですか? それが実際にSELECT ... INTO OUTFILEコマンドである場合、データベース内のすべてのテーブルをエクスポートするにはどうすればよいですか(一度に1つずつ実行する必要がないことが望ましい)。 このすべてを通して一貫性を確保するための良い方法はありますか?