我们正在运行一个包含大量MySql数据库的CentOS服务器,我需要的是一个非常简单的方法来支持这些。由于他们中的许多人都在几兆。倾倒,压缩它们然后将它们发送到安全的Google Apps帐户听起来是个不错的主意。
所以我需要的是:一个脚本将转储和压缩数据库,然后通过电子邮件发送到某个地方,如果它在其他地方发送电子邮件失败。
答案 0 :(得分:2)
我使用以下脚本将小转储发送到专用邮件帐户。
当然,这假设您可以使用mail
命令从您的计算机发送邮件。
#!/bin/bash
gzdate=`/bin/date +%Y-%m-%d_%H%M`;
gzfile=dump_${gzdate}.sql.gz
mailrecpt=recipient@domain.com
dumpuser=username
dbname=mydb
mysqldump --single-transaction --opt -u ${dumpuser} ${dbname} | gzip > ${gzfile}
if [ $? == 0 ]; then
( echo "Database Backup from ${gzdate}:"; uuencode ${gzfile} ${gzfile} ) | mail -s "Database Backup ${gzdate}" ${mailrecpt};
else
( echo "Database Backup from ${gzdate} failed." ) | mail -s "FAILED: Database Backup ${gzdate}" ${mailrecpt};
fi
您只需要调整顶部的变量。