MySQL バックアップ/リストア
バックアップ
オプション一覧
オプション | 機能 | 備考 |
---|---|---|
-u | ユーザ指定 | |
-p | パスワード指定 | |
-h | ホスト指定 | |
-x | テーブルをロック | lock-all-tables |
-d | 定義のみ | Dとは違う |
-B | DB指定 | mysqldump時 |
-D | DB指定 | 接続時 |
--opt |
以下オプションを一気に指定 --add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables --quick --set-charset |
|
--add-drop-table | DROP TABLE文追加 | |
--add-locks | INSERT文の前後にLOCK_TABLES文とUNLOCK TABLES文追加 | インポートの速度が向上 |
--create-options | CREATE TABLE文にMySQL特有のオプションを追加 | |
--disable-keys | 全てのレコードのインポートが完了するまでインデックスを作らない | インポートの速度向上 |
--extended-insert | INSERT文をコンパクトに | ダンプファイルサイズ縮小 |
--lock-tables | ダンプの前に全テーブルをロック | 無効にする場合 ---skip-lock-tables |
--quick | ダンプ時にテーブルの全レコードを1行ずつ読み込んでダンプする | メモリを圧迫しない |
--set-charset | DB名、テーブル名、カラム名などの識別子をバックティック文字「`」で囲む |
スクリプト形式
mysqldump (DB名) -u (ユーザ名) -p -(オプション) > (出力先ファイル名)
mysqldump testdb -u testuser -p > test.dump
トランザクション実行
mysqldump --single-transaction ~ > ~
リストア
スクリプト形式
mysql (DB名) -u (ユーザ名) -p < (入力先パス)