原来咨询过阿里云的客服,说是每天磁盘都有镜像,我也能看到镜像,所以本来是不考虑再做异地备份了,相信阿里云,相信政府。但有一个瞬间,我觉得异地备份不是一件麻烦的事情,于是今天就做了如下操作
利用现有的条件做备份
- 服务器默认安装了SVN,不用白不用
- 我默认有SVN服务器,不用白不用
- 我需要做的只是使用mysqldump导入wordpress数据库,利用cp拷贝出uploads目录
- 然后再svn commit一下,就可以每天生成一个版本
这样做的好处
- 显而易见,这样做两台服务器都不需要额外安装任何工具,只需要新建一个仓库写一个脚本就完事了,如何腾不出这点时间呢
- SVN做的是差异备份,这样做比每天一个目录更省空间,你尽可以每天提交一个版本
具体操作
- 新建SVN仓库,假设叫backup
- svn checkout https://svn.server/backup
- 配置/etc/my.cnf,将mysql的用户名密码写到[mysqldump]下
- 执行mysqldump wordpress > backup/wordpress.sql
- 执行
yes|cp -r /path/to/wordpress/wp-content/uploads/ backup/
- cd /path/to/backup
- svn commit -m “
date +”%Y-%m-%d”
“ - crontab -e
- 增加一行
0 1 * * * /bin/sh /root/backup.sh
这样,每天在凌晨1点的时候,会自动备份数据库和附件的目录到SVN服务器
资源下载
backup.sh下载