xrea,coreserver用のmysqlバックアップスクリプト
mysqlのバックアップといえばautomysqlbackupやmysqlhotcopyなどが便利です。
が、レンタルサーバー環境ではmysqlhotcopyは使えません。なのでautomysqlbackupを使おうと思ったのですが、DBが複数ある場合の対応が面倒なことに気が付きました。
そんなわけで、xrea用のmysqlバックアップスクリプトを自作してみました。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#!/bin/sh
ROOT_DIR=/virtual/yourid/db_backup/dumps
DB_NAMES=(yourid_db1 yourid_db2 yourid_db3)
DUMP_CMD=/usr/local/mysql/bin/mysqldump
PW=yourdbpassword
for DB in ${DB_NAMES[@]}
do
${DUMP_CMD} ${DB} --user=${DB} --password=${PW} > ${ROOT_DIR}/${DB}_dump.txt
/bin/gzip -f ${ROOT_DIR}/${DB}_dump.txt
done
exit 0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
配列にDB名を入れれば複数DBも順次処理します。
あと見ればわかると思いますが、パスワードは全DB共通になっている必要があります。
そしてこのスクリプトをxrea_mysql_backup.shとかの名前で保存し、パーミッションを実行可能にしてcronに登録すれば設置完了。
まだ運用を始めてから1週間くらいですが、問題なく動いています。
なおこのスクリプトで取ったDBのdumpファイルと、あとpublic_html以下をtarで固めたものを、毎朝4時に自宅サーバー(Linux)からxreaに接続して取得するようにしています。
これでxreaで何かトラブっても、被害は最小で食い止められると思います。