前不久CSDN 发生用户“帐号密码泄露”事件,如果他们09年的备份文件进行了加密,我想损失也不会这么惨重了。所以我们对数据库进行备份的时候,也需要对备份文件进行加密,以往万一。下面就是对mysql进行备份并进行加密的脚本。

#!/bin/sh

#mysqlbackup

#加密的密码

encryptPasswd="123456"
cd /usr/local/mysql/bin
./mysqldump --opt -uroot -p'123444' dbname |gzip -9 >/usr/local/mysqlbackup/db-`date +"%Y-%m-%d_%H-%M"`.gz
cd /usr/local/mysqlbackup
echo ${encryptPasswd} | gpg --yes   -c  --passphrase-fd 0 db-`date +"%Y-%m-%d_%H-*"`.gz
#删除源文件
rm -rf db-`date +"%Y-%m-%d_%H-*"`.gz
#删除20天前的备份
find /usr/local/mysqlbackup -mtime +20 -name "*.gz" -exec rm -rf {} \;
解密文件 gpg db-backup.gz.gpg  然后输入密码即可