2007年10月03日

ミニマルにMySQLのデータを遠隔地バックアップ

最低限データだけでも確保するため、バッチファイルにしてタスクスケジューラに登録しておく。
SET yyyyMMdd=%DATE:~,4%%DATE:~5,2%%DATE:~8%
ファイル名に入れる日付文字列を準備

NET STOP mysql
mysqlサービスを停止

zip -r mysql-data.zip.%yyyyMMdd% \usr\bin\mysql-3.23.58\data
ダータフォルダをzipアーカイブ

NET START mysql
mysqlサービスを再開

cat mysql-data.zip.%yyyyMMdd% | openssl enc -aes-256-cbc -e -base64 -pass pass:kyoutofukujyuennonattou > mysql-data.zip.%yyyyMMdd%.aes
zipをAESで暗号化

email -r stmp.mydomain.com -a mysql-data.zip.%yyyyMMdd%.aes -s Backup -n Backup -f myself@mydomain.com -b myself@gmail.com
暗号済みファイルをgmailに飛ばす

rm mysql-data.zip.%yyyyMMdd%.aes
暗号済みファイル削除

要件:cygwinでopensslとemailコマンド導入済みのWindowsサーバ
posted by kamicup at 19:42| 兵庫 ☁| Comment(2) | TrackBack(0) | プログラミング | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
メール容量がGmailの受け取り上限サイズを超えるなら、下記のコマンドでファイル分割。

split --bytes=10000000 mysql-data.zip.%yyyyMMdd%.aes mysql-data.zip.%yyyyMMdd%.aes.split.
Posted by kamicup at 2007年11月06日 16:46
分割したファイルをコマンド一発でGmailに送るには、bashシェルに入って下記のコマンドを実行する。

for i in encrypted-file.split.*; do email -r stmp.mydomain.com -a $i -s "Backup $i" -n Backup -f myself@mydomain.com -b myself@gmail.com; done
Posted by kamicup at 2007年11月06日 16:53
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/58648577
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。