自从开始使用VPS尤为需要注重数据的安全,不论我们是用WEB面板,还是用一键安装包,甚至直接手工编译环境的,我们可以选择定期手工备份,也可以使用WEB面板自带的备份工具。今天有用户提到关于LLSMP环境的备份问题,所以在这篇文章中,老左分享博客中曾经有过的一个自动备份脚本,然后经过修改完整的写一篇关于LLSMP一键包环境的备份教程。
当然,如果使用LLSMP环境的,也可以通过sh /root/llsmp/backup.sh指令手工备份到VPS空间中,然后FTP下载备份,也可以给这个指令升级为自动执行和传递数据。
老左之前有分享过关于VPS备份的几篇文章:
配置RSYNC实现定时同步镜像VPS网站备份 替换增量备份文件
在众多教程中,我们只要选择一款适合自己习惯的就可以,也没有必要每个环境和站点使用不同的方法。那就开始今天这篇文章的分享关于自动定时备份,提交到邮箱、FTP主机中的备份过程。
第一、安装sendmail组件
因为在这个脚本中,我会用到邮件和FTP一起发送确保数据的安全所以采用多途径备份的方式。发送邮件这里我采用sendmail,那就需要安装组件。
apt-getinstall sendmail mutt
在debian中运行上面的脚本,如果是centos则apt-get更换成yum就可以,然后在提示中输入y回车安装就OK。最好再重启VPS达到生效的效果。
第二、上传脚本编辑参数
https://soft.laozuo.org/scripts/autobackuptoftp.sh
下载脚本到本地,然后编译对应的信息:
MYSQL_USER=数据库用户
MYSQL_PASS=数据库密码
MAIL_TO=发送邮箱
FTP_USER=FTP用户名
FTP_PASS=FTP密码
FTP_IP=FTP账户IP
FTP_backup=备份FTP的路径文件夹
WEB_DATA=/home/wwwroot #本地备份路径
然后上传到ROOT目录中。
第三、执行脚本定时备份
chmod +x /root/autobackuptoftp.sh #执行文件赋予权限
crontab -e #准备添加定时设置
00 00 * * * /root/autobackuptoftp.sh # i命令符回车后插入前面的脚本,意思是每天半夜12点备份数据
备注:我们也可以先执行下sh/root/autobackuptoftp.sh看看是否可以手工备份同步成功。
执行之后,我在备份的FTP空间中可以看到一个数据库,一个是网站文件。
这样,就完成了在LLSMP脚本环境中自动备份网站和数据库的方法。最好先手工备份一次,如果备份不成功可以看到原因,然后解决后才能自动备份,要不就不行的。