MySQL

よく使うオプション一覧 [#oe1ca594]

|オプション|短縮|値| |–user |-u|ログインユーザー| | –password|-p|ログインパスワード| |–host|-h|ホスト名 ※省略 localhost| |–port|-P|ポート ※省略 3306| |–verbose|-v|動作の詳細| ||-t|CREATE TABLE,DROP TABLE文を省略|

対象 [#d9b1dd32]

|オプション|短縮|値| |–all-databases|-A|全データベース| |–database|-B|特定のデータベース 後にデータベースを指定|

 

トランザクション/ロック [#xb485979]

|–single-transaction||シングルトランザクションでdumpを取得できるので、一貫性が取れる| |–lock-all-tables|-x|全テーブルをロックする|

その他 [#k62118a5]

|–ignore-table=DB名.テーブル名|特定のテーブルを除外してdump| |–order-by-primary|プライマリキーでソート。dumpには時間がかかるようになるが、リストアが高速化する| |–hex-blob|これを指定しないと default-character-set がSJIS系の場合エスケープ処理に失敗し、バイナリデータが壊れてしまう場合があります。|

バイナリログを使用している場合 [#h95a8c68]

|–flush-logs|dumpを実行する前にログを書き込む。|

使い方例 [#hed75dec]

 mysqldump -u root -p -v --single-transaction -A > mysqldump.all.sql
 全データベースをシングルトランザクションでdump取得
 mysqldump -u root -p -v --single-transaciton -B testdatabase > testdatabase.sql
 特定のデータベースをシングルトランザクションでdump取得
 mysqldump -u root -p -v --single-transaction -A | gzip > mysqldump.all.`date +¥%w`.gz > /var/log/mysqldump.`date +¥w`.log 2>&1
 全てのデータベースをシングルトランザクションで詳細をログに出力しながら、gzipで固めてdump
 mysqldump -u root -p --ignote-table=hogeDB.hogetable1 --ignore-table=hogeDB.hogetable2 hogeDB > mysqldump.sql
 特定テーブルhogetable1とhogetable2を除外してdump

参考URL:http://www.risewill.co.jp/blog/archives/195

※上記サイトはとてもよくまとめられています。

参考URL:http://oinume.hatenablog.com/entry/wp/292