网站数据是一个网站的最重要的一部分,因为保护好我们的网站数据成为建站规划的首要任务。
godaddy的名费空间由于一个超大的广告,很少有人用来做站,不过我们可以把网站数据上传到这个免费空间。
创建数据备份脚本
1、登录SSH,创建文件backup.sh
[notification type=”info”] vi /root/backup.sh[/notification]
2、粘贴以下代码到backup.sh,并保存。
注释:/home/backup为本地服务器存放备份文件的目录,可以自由更改。
DataBakName:数据库文件名
WebBakName:网站数据文件名
OldData :五天后的自动删除的数据库文件
OldWeb :五天后的自动删除的网站数据文件
[notification type=”info”]
- #!/bin/bash
- cd /home/backup
- #定义数据库的名字和旧数据库的名字
- DataBakName=Data_$(date +”%Y%m%d”).tar.gz
- WebBakName=Web_$(date +%Y%m%d).tar.gz
- OldData=Data_$(date -d -5day +”%Y%m%d”).tar.gz
- OldWeb=Web_$(date -d -5day +”%Y%m%d”).tar.gz
- #删除本地3天前的数据
- rm -rf /home/backup/Data_$(date -d -3day +”%Y%m%d”).tar.gz
- #导出mysql数据库
- /usr/local/mysql/bin/mysqldump -u root -p123456 zhumaohai > /home/backup/zhumaohai.sql
- #压缩数据库
- tar zcf /home/backup/$DataBakName /home/backup/*.sql
- #删除sql文件
- rm -rf /home/backup/*.sql
- #压缩网站数据
- tar zcvf /home/backup/$WebBakName /home/wwwroot
- #上传到ftp空间,删除FTP空间5天前的数据
- ftp -v -n 8.8.8.8 << END
- user gdftpuser 123456
- type binary
- cd backup
- delete $OldData
- delete $OldWeb
- put $DataBakName
- put $WebBakName
- bye
- END
[/notification]
3、为backup.sh添加执行权限。
[notification type=”info”] chmod +x /root/backup.sh [/notification]
添加脚本至crontab(自动启动程序)
执行命令crontab -e,添加每天0点10分启动代码
[notification type=”info”] 10 00 * * * /root/backup.sh [/notification]
测试脚本
执行脚本backup.sh
[notification type=”info”] ./backup.sh [/notification]
稍等片刻,登录godaddy免费空间的FTP,看是否已经成功上传了备份文件,如果存在,证明脚本已经设置正确。否则,认真检查FTP信息是否设置正确。
这个脚本可以设置删除多少天前的数据,所以就不用担心免费空间的容量不足的问题。