page_adsence

2011年3月7日月曜日

mysqlの世代バックアップとリストアに関して

mysqlの世代バックアップは以下の通り。
cronの実行時間に関しては適宜変更する。
以下の記述で4日間分のバックアップが残る

* * * * * mysqldump -u ユーザー名 -p パスワード データベース名 --default-character-set=文字コード | gzip > db/dump_`date +"\%Y\%m\%d_\%H"`.sql.gz
* * * * * find db/ -type f -name "dump_*.tar.gz" -mtime +3 -daystart | xargs rm

バックアップからデータベースにリストアする方法は以下の通り。
zcat ダンプファイル名.gz | mysql -u ユーザー名 -p パスワード データベース名

こんな感じでリストアできるみたい。
zcatコマンドとかつかったこと無かったけど、こんな風に使うのか。