脚本制作程序编写VPS网络服务器备份数据网站到七牛云储存的shell脚本制作(第二版)Jager · 八月五日" />

全国咨询热线:18720358503

VPS网络服务器备份数据网站到七牛云储存的shel

类别:行业新闻 发布时间:2021-03-24 浏览人次:

脚本制作程序编写 企业网站建设 資源共享 帮我留言板留言 有关

' next-text='' view="0" >脚本制作程序编写VPS网络服务器备份数据网站到七牛云储存的shell脚本制作(第二版)Jager · 八月五日 · 2017年七牛云储存 · 备份数据到七牛 2689次已读

上一一篇文章公布了备份数据网站到七牛的初版,此次应回应规定先发布同歩基本原理及shell源代码,让喜爱瞎折腾的人会有力可让。实际上,这一备份数据专用工具的基本原理十分简易,便是使用了官方网的同歩专用工具,相互配合简易的shell句子就可以进行。

一、备份数据基本原理介绍

qrsync 是一个依据七牛云储存API完成的简单指令行輔助提交同歩专用工具,适用断点续提交,增加量同歩,它可将客户当地的某文件目录的文档同歩到七牛云储存中,同歩或提交好几百GB乃至上TB的文档没什么鸭梨。

留意:被同歩的文档名和相对路径务必是utf8编号,非utf8的文档名和相对路径可能同歩不成功

Mac OS: qiniu-devtools-darwin_amd64-current.tar.gz
Linux 64bits: qiniu-devtools-linux_amd64-current.tar.gz
Linux 32bits: qiniu-devtools-linux_386-current.tar.gz
Linux ARMv6: qiniu-devtools-linux_arm-current.tar.gz
Windows 32bits: qiniu-devtools-windows_386-current.zip
Windows 64bits: qiniu-devtools-windows_amd64-current.zip

先创建一个配备文档(JSON文件格式),例如叫conf.json,內容以下:

 

{
 "src": "/home/your/sync_dir",
 "dest": "qiniu:
 access_key= AccessKey 
 secret_key= SecretKey 
 bucket= Bucket 
 key_prefix= KeyPrefix 
 threshold= Threshold ",
 "deletable": 0,
 "debug_level": 1
}
简易表明:

①、src表明必须同歩的当地文件目录,例如网站文档装包储放相对路径:/www/web_backup,或者你网站文档相对路径:/home/domain/zhang.

②、两个Key:access_key和secret_key,进到七牛账户设定页面能够获得到。

③、bucket表明储放备份数据文档的七牛室内空间,提议在建一个。

④、key_prefix 表明储放在七牛室内空间的上一级文件目录名字,例如key_prefix=backup/ 则表明备份数据文档将储放到总体目标室内空间下的backup文档夹中。主要参数空出则表明储放到改室内空间的网站根目录。

⑤、threshold表明文档分层提交的块尺寸,企业为字节数(Byte),可依据你当地的互联网网络带宽来明确。

⑥、deletable  是不是同歩删掉七牛云端的文档,一般设定0,当当地文档删掉时其实不删掉储存在七牛的相匹配文档。假如你要删掉当地文档的同时也删掉储存在储存在七牛的文档,则设定为1。

Ps:之上即是此专用工具必需的主要参数,大量主要参数请至七牛官方网文本文档查询。

 

新建立完 conf.json 配备文档后,便可以运作 qrsync 程序开展同歩。

Unix/Linux/MacOS 系统软件能够用以下指令行:

./qrsync /path/of/your-conf.json

Windows 系统软件客户在 [刚开始] 莱单栏挑选 [运作] 键入 cmd 回车键就可以开启 DOS 指令行对话框。

假定你的 qrsync.exe 和配备文档都储放在 d:/tools/,则以下实行:

D:\tools\qrsync.exe D:\tools\your-conf.json

必须留意的是,qrsync 是增加量同歩的,假如你上一次同歩取得成功后改动了一部分文档,那麼再度运作 qrsync 时只同歩增加的和被改动的文档。自然,假如上一次同歩全过程错误了,还可以再次运作 qrsync 程序再次同歩。

 

之上即是各种各样系统软件将文档同歩到七牛云储存的基本原理方式,大家换一个念头:当我们们同歩的是网站装包的文档及数据信息库,那不就变向的完成了将网站备份数据到七牛云储存了没有?!

二、第二版专用工具shell源代码(未完待续...)

细心看过备份数据基本原理,坚信有shell基本的朋友非常容易便可以制作一个全自动备份数据的专用工具了。

下边发布下张戈写的第二版专用工具源代码:

对比初版:

①、提升了数据信息库和网站文档分离出来体制,可分离设置各有的备份数据间距,例如数据信息库我必须每日备份数据一次,而网站文档打了算七天备份数据一次;

②、数据信息库备份数据文档先缩小后提交,减少文档容积,节约室内空间总流量。

专用工具文档构造:
[[email protected] ~]# tree qiniu
qiniu
|-- backup #当地默认设置同歩文件目录
|-- conf #配备文档储放文件目录
|-- main.sh #原始化shell脚本制作
|-- QN_backup.sh #备份数据及同歩shell脚本制作
`-- qrsync
2 directories, 3 files
原始化脚本制作源代码:
[[email protected] ~]#vim main.sh
#!/bin/bash
#Author:ZhangGe
#Des:Backup you website to qiniu CDN.
#Date:2014.7.29
#config Em.
filepath(){
 read -p "Please input the webroot like /domain/zhang.:" filepath
 if [ -z $filepath ];then
 echo Nothing input!Please retry..
 filepath
 elif [ ! -d $filepath ];then
 echo $filepath not found! Press Enter_key retry!
 filepath
access_key(){
 read -p "Please input the access_key:" access_key
 if [ -z $access_key ];then
 echo Nothing input!Please retry..
 access_key
secret_key(){
 read -p "Please input the secret_key:" secret_key
 if [ -z $secret_key ];then
 echo Nothing input!Please retry..
 secret_key
bucket(){
 read -p "Please input the bucket name:" bucket
 if [ -z $bucket ];then
 echo Nothing input!Please retry..
 bucket
mysqluser(){
 read -p "Please input the mysql username:" mysqluser
 if [ -z $mysqluser ];then
 echo Nothing input!Please retry..
 mysqluser
mysqlpd(){
 read -p "Please input the mysql password:" mysqlpd
 if [ -z $mysqlpd ];then
 echo Nothing input!Please retry..
 mysqlpd
backpath(){
 read -p "Please input the backup path:" backpath
 if [ -z $backpath ];then
 backpath=`pwd`/backup
 elif [ ! -d $backpath ];then
 echo $backpath Not exist!!Please retry..
 backpath
dbname(){
 read -p "Please input the database name:" dbname
 if [ -z $dbname ];then
 echo Nothing input!Please retry..
 dbname
d_time(){
 read -p "Please input the db backup rate time(like 1/2/3..30):" d_time
 if [ -z $d_time ];then
 d_time=1
w_time(){
 read -p "Please input the web backup rate time(like 1/2/3..30):" w_time
 if [ -z $w_time ];then
 w_time=7
input(){
 clear
 filepath
 access_key
 secret_key
 bucket
 mysqluser
 mysqlpd
 dbname
 backpath
 d_time
 w_time
input
cd $(cd $(dirname $BASH_SOURCE) pwd)
echo \{\"src\":\"$backpath\",\"dest\":\"qiniu:access_key=$access_key\ secret_key=$secret_key\ bucket=$bucket\ key_prefix=backup\/\ threshold=512000\",\"deletable\":0,\"debug_level\":1\} ./conf/qrsync.conf
#crontab
test -f /var/spool/cron/root cp -f /var/spool/cron/root /var/spool/cron/root_bak
grep -v "QN_backup" /var/spool/cron/root /var/spool/cron/root
echo "#Add by QN_backup Scripts" /var/spool/cron/root
echo "0 0 */$d_time * * sh `pwd`/QN_backup.sh db $mysqluser $mysqlpd $dbname $backpath" /var/spool/cron/root
echo "0 0 */$w_time * * sh `pwd`/QN_backup.sh file $filepath $backpath " /var/spool/cron/root
#reload the crontab
/sbin/service crond reload 2 /dev/null
echo =========================The crontab list=================================
crontab -l
echo =========================The crontab list=================================
pelet!
exit 0
备份数据及同歩脚本制作源代码:
[[email protected] ~]#vim QN_backup.sh
#!/bin/bash
#Author:ZhangGe
#Des:Compress file
#Date:2014-7-29
TODAY=$(date +%Y-%m-%d)
cd $(cd $(dirname $BASH_SOURCE) pwd)
if [ -z $1 ];then
 echo Please Usage:./QN_backup.sh back_type filepath backpath..and so on
 exit 1
if [ "$1" == "db" ];then
 mysqluser=$2
 mysqlpd=$3
 dbname=$4
 backpath=$5
 if [ ! -z $backpath ];then
 rm -f $backpath/database_backup*
 mysqldump -u$mysqluser -p$mysqlpd $dbname $backpath/database_backup_$TODAY\.sql
 zip --version /dev/null zip $backpath/database_backup_$TODAY\.zip $backpath/database_backup_$TODAY\.sql || tar cvzf $backpath/database_backup_$TODAY\.tar.gz $backpath/database_backup_$TODAY\.sql
if [ "$1" == "file" ];then
 filepath=$2
 backpath=$3
 if [ ! -z $backpath ];then
 rm -f $backpath/website_backup*
 zip --version /dev/null zip $backpath/website_backup.$TODAY\.zip $WebRoot || tar cvzf $backpath/website_backup.$TODAY\.tar.gz $WebRoot
./qrsync ./conf/qrsync.conf
exit 0

Ps:因为七牛近期屏蔽掉了室内空间內容查询,造成第二版备份数据专用工具未开展检测,因此张戈也不发免费下载详细地址了,回过头检测无误后再说填补下。

写在最终:过去文能看出,七牛官方网出示的同歩专用工具适用多种多样系统软件,例如Windows,有兴趣爱好的朋友能够参照此篇,为Windows系统软件的VPS网络服务器写一个批处理命令脚本制作,来完成网站备份数据!自然,有此要求的朋友还可以留言板留言,并出示Windows系统软件的VPS服务器,要是有时间,张戈可免费加上此批处理命令脚本制作。

14 条答复

推荐阅读

VPS网络服务器备份数据网站到七牛云储存的shel

脚本制作程序编写企业网站建设資源共享帮我留言板留言有关' next-text='' view="0" >脚本制作程序编写VPS网络服务器备份数据网站到七牛云储存的shell脚本制作(第二版)Jager · 八月五日...

2021-03-24
国际性貿易网站申请办理paypal付款插口必须什么

针对这些国际性网站、app、出口外贸网站等必须paypal付款的客户,针对怎样申请办理paypal并不是很掌握,在这里里,徐州市企业网站建设就给大伙儿详尽的表明一下:申请办理paypal付款...

2021-03-23
【干货知识】梦迪高新科技创办人崔总: 有关企业

1. 企业网站建设制造行业的现况一个网站的关键性显而易见,而怎样挑选一家技术专业可靠的建网站企业确是大部分要求方而为烦恼的难题。纵览现阶段建网站销售市场的总体发展趋势...

2021-03-23
怎样让客户对你网站造成信赖感?

1、开启网页页面速率网页页面载入速率针对检索模块来讲十分关键,缘故取决于立即性危害到客户访问阅读文章,网页页面载入速率越来越慢越磨练客户的细心,而客观事实早已证实客...

2021-03-23
公司务必要当官网, 为何呢?

至今才行,仍然有很多公司对当官网其实不高度重视,觉得沒有必需,是互联网企业以便挣到钱搞出的营销手段。对于此事,梦迪高新科技表明,公司务必要当官网,不然可能危害其发...

2021-03-23
醍恩红酒微信小程序

醍恩红酒微信小程序:企业创立于二零一零年,济南市醍恩酒厂持续提高公司的关键市场竞争力,使公司在发展趋势中塑造起优良的社会发展品牌形象,总体目标:全力以赴打造出济南市...

2021-03-23
X

400-8700-61718720358503
企业邮箱2639601583@qq.com
官方微信