VPSサーバを契約したので、バックアップを念入りにする事にした
さくらのVPSサーバを契約した。
これまで専用サーバを利用して来ましたが、VPSの方が安かったし、5年前の格安専用サーバよりスペックが高かったので乗り換えです。
せっかくなので、これまで専用サーバで利用していたMySQLのバックアップスクリプトに手を加えてバックアップを念入りにする事にした。
cronで定期的にバックアップファイルを別のサーバにコピーしておくことにした。
shスクリプトの覚え書き。
#!/bin/bash PATH=/usr/local/sbin:/usr/bin:/bin BACKDIR=/backup/mysql ROOTPASS=rootのパスワード rm -rf $BACKDIR mkdir -p $BACKDIR #データベース名のリストを取り出すと何故か「.」や「-」が文字化けするのでそれを修正 DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /| sed -e "s/@002e/./g"| sed -e "s/@002d/-/g"` for dbname in $DBLIST do table_count=`mysql -u root -p$ROOTPASS -B -e "show tables" $dbname|wc -l` [ $table_count -ne 0 ] && mysqldump -u root -p$ROOTPASS $dbname --events > $BACKDIR/$dbname.sql | logger -t mysqldump done #ブラウザからもダウンロードできるようにApacheのルートにバックアップのzipファイルを作成 rm -rf /var/www/html/db_backup.zip zip -q /var/www/html/db_backup.zip /backup/mysql/* #FTP接続でさくらインターネットのレンタルサーバにバックアップファイルをアップロード cd /var/www/html/ ftp -n さくらインターネットのID.sakura.ne.jp << _EOD user FTPアカウント FTPパスワード cd /home/さくらインターネットのID ascii put db_backup.zip quit _EOD