@blog.justoneplanet.info

日々勉強

mysqldumpする

■mysqldump

mysqldump --no-autocommit -u root -p dbname > db.dump
scp -r ./db.dump user@123.123.123.123:/home/db.dump

123.123.123.123

cd /home
mysql -u root -p --default-character-set=utf8 < db.dump

50MBくらいなら10秒で終わる。ちなみにWHEREで条件を絞ってエクスポートする場合は以下のようにする。

echo "SET NAMES utf8;SELECT * FROM table WHERE hoge = 'fuga'” | mysql -u user -p dbname > /home/piyo.txt;

INTO OUTFILEは権限が必要なので実行できない場合も多々ある。

■バックアップ

以下のようにすることでmysqldumpを利用して定期的にデータベースをbackupできる。

#!/bin/sh
TDAY=`date +%Y%m%d`
cd /var/www/hogehoge.justoneplanet.info/app/vendors/shells
mysqldump --no-autocommit -u root --password=hogehoge dbname > $TDAY.dump

crontab

以下のように記述することで、毎日1:15にバックアップが実行される。

15 1 * * * /var/www/hogehoge.justoneplanet.info/app/vendors/shells/backup.sh

コメントはまだありません»

No comments yet.

RSS feed for comments on this post.TrackBack URL

Leave a comment