私SQL 
2008/10/24 金曜日 16:02:19
mysqlにはmysqldumpとかいう便利なバックアップ機能がついています。
mysqldump --all-databases -uユーザー名 -pパスワード DB名 > 保存ファイル名.sql
とすると、そのサーバーのDB全てが保存ファイル名として保存されます。
--all-databasesと指定すると、DB、テーブル、レコード全てが出力されます。
ここのパラメーターを変更することで、テーブルのみとかレコードのみとか指定できます。
よく使うパラメータは以下のとおり。
-A、--all-databases 全てのデータベースを指定。 -B、--databases 出力するデータベースを指定する。 -t、--no-create-info CREATE TABLE情報を残さない。 -d、--no-data レコードを残さない。
こんな感じで、手軽にバックアップができます。
で、戻す方法は・・
mysql -uユーザー名 -pパスワード DB名 < 保存ファイル名.sql
出力の時に使った「>」を「< 」とするだけで、入力できるお手軽さ。
ちなみに、mysqldumpのデフォルト文字コードはUTF-8のようで、環境によっては文字化けてしまう場合があるので、出力の際に「--default-character-set=文字コード」パラメータを追加することで、指定の文字コードに出来るようです。
そんな感じ。