rsyncを使用してサーバ上のファイルをバックアップし、mysqldumpを使用してデータベースをバックアップします。ここに私の懸念があります:mysqldumpのデータの完全性を保証する<-> rsync
私のデータベースのmysqldumpは約30秒かかります。私は、ファイルへのパスを含め、ユーザーがアップロードした画像に関する情報を保存する写真というテーブルを持っています。 mysqldumpの完了に30秒かかる間に写真がアップロードまたは削除されるとどうなるか心配です。それが起こってrsyncされたファイルとmysqldumpデータを復元すると、削除された写真を指す行を含むデータベースや、アップロードされた写真の行が見つからなくなる可能性があります。
mysqldumpがrsyncと正確に一致することを確認するにはどうすればよいですか?あなたがバックアップしているテーブルから任意の書き込み活動を阻止するために、事前に
おかげで、 ブライアン
mysqldumpの実行中にテーブルをロックするだけでは十分ではありません。また、rsyncの実行中にテーブルをロックしたままにする必要があります。そうでなければ、例えばrsyncがダンプの後に来ると、ファイルがディスク上で削除され、ダンプの主張がそこにあるはずです。まだこれらのファイルはrsyncには終わりません。 –
テーブルがロックされ、ユーザーがファイルをアップロードすると、テーブルのロックが解除されるとレコードを作成するINSERTクエリが実行されますか?クエリが30秒以上待たなければならないのは悪いですか? – Brian