バックアップ
2011年2月28日
mysqldumpを利用したMySQL5.1データベースのバックアップ
mysqldumpはコマンドラインで利用します。
オプションがいろいろあるので使い方は多種多様になりますので、よく使うパターンをいくつか整理しておきます。
■マニュアル
http://dev.mysql.com/doc/refman/5.1/ja/mysqldump.html
(1)1データベース全てをバックアップ
mysqldump –host=ホスト名 –user=ユーザー名 –password=パスワード データベース名 > ダンプファイル名
(2)1テーブルのみバックアップ
mysqldump –host=ホスト名 –user=ユーザー名 –password=パスワード データベース名 テーブル名 > ダンプファイル名
(3)MySQLの全てのデータベースをバックアップ
mysqldump –host=ホスト名 –user=特権ユーザー名 –password=パスワード –all-databases > ダンプファイル名
(4)1データベースのCREATE TABLEステートメントのみをダンプ(INSERTを含まない)
mysqldump –no-data –host=ホスト名 –user=ユーザー名 –password=パスワード データベース名 > ダンプファイル名
(5)1データベースのテーブルデータのみをダンプ(CREATE TABLEを含まない)
mysqldump –no-create-info –host=ホスト名 –user=ユーザー名 –password=パスワード データベース名 > ダンプファイル名
■その他よく使うオプション
[–add-drop-table]
DROP TABLEステートメントを含まないダンプを生成します。
[–no-create-db]
CREATE DBステートメントを含まないダンプを生成します。
[–quote-names,-Q](デフォルトは有効)
データベース名、テーブル名、カラム名を`でクォートします。
[–quick,-q](デフォルトは有効)
メモリバッファ使用有無を設定します。
無効にする場合は[–skip-quick]を設定します。
[–extended-insert,-e]
複数のINSERT分をまとめるのでダンプファイルサイズが小さくなる。