自动备份mysql数据库并发送到Email

By ゞ猫, 2009/06/30 22:39

一个博客,一个网站最重要的就是数据库,所以经常备份数据是必须的.尽管 WordPress 有定时备份数据的插件,但只能备份当前的博客,不够灵活.适合个人小小博客,对于一些网站来说,就不适合了.现在很多人都拥有多个网站,showfom 同学就有几个网站.每个网站都装个插件就比较麻烦了.况且不是每个网站都是 WordPress 的 .

所以写了个自动备份mysql数据库的脚本,再加上gmail这个G级邮箱,备份多少数据都可以了...下面是代码:

mysqldump -uuser -ppassword --databases db1 db2 db3 > /home/website/backups/databackup.sql
tar zcf /home/website/backups/databackup.sql.tar.gz /home/website/backups/
echo "主题:数据库备份" | mutt -a /home/website/backups/databackup.sql.tar.gz -s "内容:数据库备份" www@gmail.com
rm -r /home/website/backups/*


将上面的代码保存为automysqlbackup.sh
然后利用crontab 实现动备份,在ssh下,

crontab -e

输入以下内容:

00 00 * * * /home/website/automysqlbackup.sh

这样就实现了每天00:00自动备份mysql数据库并发送到Email

简单的说明下吧.
第一句是一次性备份多个数据库,这个要你用root权限的用户才可以的..-u后面的是数据库用户名 -p后面的是数据库密码 无需空格 db1 db2 db3为你需要备份的数据库名.
如果你的数据库用户名没有root这个权限,可以改为这样

mysqldump -uuser -ppassword db1 > /home/website/backups/db1.sql
mysqldump -uuser -ppassword db2 > /home/website/backups/db1.sql
mysqldump -uuser -ppassword db3 > /home/website/backups/db1.sql

第二句是将 backups 文件夹里面的数据文件压缩为文件名:databackup.sql.tar.gz

第三句是将压缩了的数据库文件发送到指定的邮箱.....

其中的主题:数据库备份 ,就是邮件的主题, 内容:数据库备份,就是邮件的内用,

/home/website/backups/databackup.sql.tar.gz 为附件

www@gmail.com为要发送的Email

暧味日志

17 Responses to “自动备份mysql数据库并发送到Email”

  1. Showfom 说:

    好。。。暑假的时候用上 哦哈哈

  2. 博译论 说:

    这个很强大,立马就去试试
    不爱插件

  3. bigCat 说:

    crontab素神器

  4. Leeiio 说:

    呃,数据库几十MB的就不知所措了~

  5. vps观察者 说:

    可能daigou.in转载了这篇文章,然后我又转载了他们的,所以才会造成似曾相识吧。

  6. 资源窝 说:

    这个跟自己在phpmyadmin后台进行导出备份是不是一样的效果,只是你这个是定时的全自动,那个是需要手动操作的?
    还是有所区别?

  7. bailywen 说:

    好东西,收了。

  8. 莪卟狠 说:

    我想知道这个是怎么使用的?
    能给我个使用的教程么?

  9. 莪卟狠 说:

    我在cpanel控制面板使用了crontab。。可是却被提示许可被拒绝 Permission denied 这是怎么回事呢?

  10. leez 说:

    很不错。可以懒很多了。

  11. 阿文 说:

    debian下用,为何收不到邮件啊?貌似任务没有执行...

  12. [...] 一直用自动备份mysql数据库并发送到Email , 但cron程序默认设置是,每执行一次命令就会给本地用户发送一次邮件,这个是很烦人的!!!!所以我要禁掉它,解决方法有如下一些: 1.将执行命令的信息重定向到 cron_command >/dev/null 2>&1 [...]

  13. [...] 原帖地址:http://imcat.in/backup-mysql-databases-automatically-sent-to-email/ [...]

  14. Franky 说:

    不错,最近正玩这个,学习也

留下回复