同じサーバー上でMySQLデータベースを複製する方法 質問する

同じサーバー上でMySQLデータベースを複製する方法 質問する

大規模な MySQL データベース ( と呼ぶことにします) がありlive_db、これを同じマシンに複製して、テーブル構造やデータなど ( ) を操作できるテスト システムを提供したいと考えています。 定期的に をの内容でtest_db更新し、可能であれば増分更新したいと考えています。test_dblive_db

MySQL には、それを行うための組み込みメカニズムがありますか? マスター スレーブ レプリケーションは、 内のデータを変更できるはずなので、必要なものではないと思いますtest_db。ただし、これらの変更は保存する必要はありません。

よろしくお願いいたします。

CGD

ベストアンサー1

コマンドmysqlライン クライアントは、標準入力から SQL ステートメントのストリームを受け入れます。したがって、出力をコマンドラインにmysqldump直接パイプすることができますmysql。これを cron ジョブとして実行すると、テスト データが定期的に更新されたライブ データで上書きされます。

mysql --user=username --password=passwd -e 'DROP DATABASE test_db;'
mysql --user=username --password=passwd -e 'CREATE DATABASE test_db;'
mysqldump --user=username --password=passwd live_db | mysql --user=username --password=passwd test_db

データが大きいため、時間がかかることに注意してください。

おすすめ記事