4

データベースの定期的なダンプの開発に取り組んでいます。このスクリプトを使用してバックアップを作成し、それを通常の cron ジョブに送ります。最終的には、テキスト ファイルとすべての電子メール アーカイブが作成されます。

私たちが遭遇した問題は、2 つのテーブルのサイズです。それぞれに 60,000 のフィールドがあり、毎日成長します。バックアップには増分バックアップが最適なソリューションだと思いますが、それを復元する場合は... 巨大なプロジェクトになります。

私の質問は2つの部分です:

a)巨大なテーブルを毎日バックアップするより簡単な方法はありますか?そうでない場合は、

b) 日次/週次の増分バックアップからバックアップを復元する簡単な方法はありますか?

ありがとう!

4

3 に答える 3

9

Maatkitをチェックしてみてください。これは一連の perl スクリプトです。そのうちの 1 つは mk-parallel-dump で、mysqldump の複数のコピー (デフォルトでは、マシンの CPU ごとに 1 つ) を生成し、ダンプを大幅に高速化します。ダニエルが提案したように、これを cron ジョブでも設定できます。

于 2008-11-18T04:37:20.247 に答える
6

Crob ジョブを使用して mysqldump を実行し、バックアップしたいテーブルをダンプできます。次に、そのファイルの差分バックアップを毎日のバックアップに使用し、週に 1 回完全バックアップを実行します。バックアップの手間のかかる作業は、選択したバックアップ エンジンで行う必要があります。

DB の復元は決して楽しいものではないので、いずれにせよ大きなプロジェクトになるでしょう。

http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html

これがうまくいくかどうか教えてください。

于 2008-11-17T21:44:40.033 に答える
0

LVM スナップショットを使用してデータソースの定期的なスナップショットを取得することを検討してから、SQL ダンプを保存するために、スナップされたコピーに対して maatkit を使用します。バックアップがライブ プラットフォームのパフォーマンスの問題を引き起こさないように、スレーブ MySQL データベースでこれを行います。

于 2008-11-20T17:03:35.043 に答える