[前][次][番号順一覧][スレッド一覧]

mysql:12752

From: "Matsunobu, Yoshinori" <"Matsunobu, Yoshinori" <Yoshinori.Matsunobu@xxxxxxxxxx>>
Date: Tue, 14 Feb 2006 21:22:21 +0900
Subject: [mysql 12752] Re: MySQL のバックアップ・復元について

大林さん

松信です。

>% mysqldump ---all-databases --flush-logs > ***.sql
>を行い、フルバックアップとバイナリログにて、
>データの復元を行う形かと思います。

mysqldumpによってオンラインバックアップを行なう場合、
以下のどちらかの方法を使うと良いと思います。

1.MyISAMなどの非InnoDBテーブルに対して途中で更新が入る可能性がある場合
バックアップデータの一貫性を保つために、バックアップの間中共有ロックをかける必要があります。
以下のように実行します。
% mysqldump ---all-databases  --lock-all-tables --flush-logs > ***.sql

2.権限テーブルを除くすべてのテーブルがInnoDBの場合
この場合、「バックアップの開始時にほんの一瞬だけ共有ロックをかければ、
バックアップデータの一貫性が保たれる」というバックアップ方法があります。以下のように実行します。
% mysqldump ---all-databases  --master-data=2 --single-transaction --flush-logs > ***.sql
1との違いは、バックアップの最中に更新を行なうことができるということです。

1,2のどちらの場合でも、データベースの数に関わらず、
バイナリログは1個しか作成されませんので試してみてください。


--master-data=2とか、--single-transactionとかいったパラメータの意味は、
英語版のマニュアルに書いてあるので、こっちを見てみてください。
http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html
もう1年以上前に出たパラメータなのですが、日本語版にはまだ反映されてない…。



[前][次][番号順一覧][スレッド一覧]

->   12752 2006-02-14 21:22 ["Matsunobu, Yoshinor] Re: MySQL のバックアップ・復元について  
     12761 2006-02-16 01:39 ┗[baya <bayapbayap@xxx]