使用帮助 | 联系电话:400-880-0256 0769-23037585 21686281

VPS服务器备份网站文件和数据库到七牛云存储的shell脚本工具

作者:admin 发表于:2014-08-04 点击:1257  保护视力色:

今天分享的工具也和备份有关,而且是远程备份,这个工具算是我的无聊之作吧,虽说WordPress已经有wp2pcs这类备份插件了。相信折腾VPS的站长会喜欢我这个工具的,因为它不会常驻占用资源。

一、工具档案

工具名称:Backup_to_qiniu_by_zhangge-Ver1.0.sh

工具语言:Shell,json

工作环境:Linux

功能描述:通过Linux系统计划任务,将网站文件及数据库备份到七牛的免费云存储空间

额外说明:

①、工具默认使用zip打包,如果系统未安装zip,将使用tar打包成tar.gz格式;

②、为了避免中文乱码,工具中全部采用洋文,张戈水平有限,可能存在蹩脚语法(下文有中文对照);

③、使用原生交互风格,未做界面菜单式优化,反正初始化也就用一次。

二、使用说明

①、下载工具:

进入VPS系统,执行以下命令下载工具:

cd  && wget http://mymsdn.qiniudn.com/backup/Backup_to_qiniu_by_zhangge-Ver1.0.sh

②、运行工具,并根据工具提示输入信息:

cd && ./Backup_to_qiniu_by_zhangge-Ver1.0.sh

 过程如下:

[root@jiukeyi ~]# ./Backup_to_qiniu_by_zhangge-Ver1.0.sh
Please input the webroot like /domain/zhangge.net/public_html:输入你网站文件存放路径
Please input the access_key:输入七牛的access_key
Please input the secret_key:输入七牛的secret_key
Please input the bucket name:输入七牛的空间名
Please input the mysql username:输入数据库账号
Please input the mysql password:输入数据库密码
Please input the database name:输入数据库名称
Please input the backup path:输入备份文件的临时存放路径,直接回车将存放在/usr/local/qiniu/backup
Please input the backup rate time(like 1/2/3..30):输入备份间隔,比如输入7表示每七天备份一次
#回车后,出现下图信息则为成功:
=========================The crontab list=================================
#Add by QN_Backup Scripts
0 0 */7 * * sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest
=========================The crontab list=================================
compelet!

下面贴上测试截图:

文章《VPS服务器备份网站文件和数据库到七牛云存储的shell脚本工具》中的图片-来自张戈博客的Shell分类 第1张执行完成后,可以复制crontab的命令行,手动执行试试效果:

sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest

文章《VPS服务器备份网站文件和数据库到七牛云存储的shell脚本工具》中的图片-来自张戈博客的Shell分类 第2张

备份成功后,七牛对应的空间将可以看到刚刚备份的文件:

文章《VPS服务器备份网站文件和数据库到七牛云存储的shell脚本工具》中的图片-来自张戈博客的Shell分类 第3张

以上过程为初始化,只需执行一次即可,当然重复执行也没关系哈,只是覆盖了设置而已。

三、后期维护

做完初始化设置之后,如果想改变备份间隔或者备份目标之类的,你可以编辑系统计划任务,来重新定义:

#执行crontab -e,打开计划任务编辑界面
[root@jiukeyi ~]# crontab -e
#Add by QN_Backup Scripts  
0 0 */7 * * sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest

 以上第4行则为备份的命令行,以下为后期修改说明:

前5列表示执行频率,具体为 分  时 日 月 周,工具默认是定义在【日】这一列,代码中的 */7 表示每7天备份一次;

/www/web/default:需要备份的网站文件路径

test2、123456:数据库用户名和密码

/www/backup_temp:备份文件存放地址,每次备份的文件将保留至下一次备份才会被删除,差不多算本地备份了。

mytest :数据库名称

Ps:当然你也可以仿照第4行,根据实际需要插入多条任务计划。

四、工具展望

此工具也只是张戈的无聊蛋疼作品,VPS用户实在不多,而且都有自己的一套备份系统。发这个工具的目的也只是为了给备份网站多一条出路。

视受欢迎程度,下一版工具将加入

①、网站文件/数据库分开备份的自定义机制;

②、做成菜单式,将项目分开设置,包括后期维护的交互式菜单,提高易用性