いっつも MySQL のコマンドの書式を忘れるのでメモする。
バックアップ
バックアップを行うには、mysqldump コマンドを使用します。
# 全てのデータベースをバックアップする
$ mysqldump -u user -p --all-databases > dump.sql
# 特定のデータベースだけを指定するには以下のようにする
$ mysqldump -u user -p DATABASE_NAME > dump.sql
# LOCK TABLES, UNLOCK TABLE を追加する
$ mysqldump -u user -p --add-locks > dump.sql
# テーブル作成の前に DROP TABLE 文を追加する
$ mysqldump -u user -p --add-drop-table > dump.sql
# ホストの指定。 -h でも ok
$ mysqldump -u user -p --host=localhost > dump.sql
# テーブル内のレコードは書き込まない
$ mysqldump -u user -p --no-data > dump.sql
リストア
上記 mysqldump で出力したものの中身は SQL 文ですので、テキストエディタなどで開いて中身を確認できます。これをリストアするには、 mysql コマンドにリダイレクトで渡してあげるだけです。
$ mysql -u user -p < dump.sql
# データベースを指定
$ mysql -u user -p DATABASE_NAME < dump.sql
毎回やるたびにコマンド調べてるのでこれでちょっとは覚えたかな・・・
Sponsored Link