vps自动备份shell脚本代码
本节内容:
自动备份网站内容的shell脚本
一、特点与功能
1、纯shell脚本,使用简单,技术门槛低,容易修改,删除即可卸载。
2、可指定数据备份频率及保存的备份数量,能自动删除不必要的旧备份。
3、可指定多个需要备份的mysql数据库,甚至排除某个数据库不备份。
4、可指定多个需要备份的数据目录,甚至支持二级目录打包备份。
5、支持本地和多重备份(ftp,scp,amazon s3),异地备份可选完全和增量备份。
二、下载与使用
2.1、下载脚本
https://gist.github.com/1505857
复制代码 代码示例:
wget
chmod 100 vps_auto_backup.sh
mkdir /var/shell && mv vps_auto_backup.sh /var/shell
2.2、设置cron守护进程
自动执行频率可随意设置,一般一小时一次就足够了。
复制代码 代码示例:
crontab -e
0 * * * * /bin/bash /var/shell/vps_auto_backup.sh
2.3、安装附加软件
如果你需要进行远程ftp、scp备份,则需安装lftp、expect。
复制代码 代码示例:
yum -y install lftp expect #centos
apt-get -y install lftp expect #ubuntu
三、配置选项
复制代码 代码示例:
# 备份数据存放目录
backup_dir="/root/vps-bak"
mysql备份选项
# 是否启用mysql备份,0是关闭,1是启用。
enable_mysql_backup="1"
# 数据库备份时间间隔,1小时=3600秒。
mysql_backup_cycle="43200"
# 数据库备份保存数量,默认保存最近4次备份。
# 例如:一天备份二次,需要保存最近二天备份,则此处填"4"
mysql_backup_num="4"
# 数据库主机、用户名、密码。
mysql_host="localhost"
mysql_user="root"
mysql_pwd="123456"
# 需要备份的数据库名,多个数据库要用空格分开,all表示所有数据库。
mysql_db_names="all"
# 需要排除备份的数据库名,多个数据库要用"|"分开。
mysql_exclude_db="phpmyadmin|information_schema|performance_schema"
web备份选项
# 是否启用web数据本地备份,0是关闭,1是启用。
enable_local_backup="1"
# 数据备份时间间隔,1小时=3600秒。
www_backup_cycle="86400"
# 数据备份保存数量,默认保存最近2次备份。
# 例如:一天备份一次,需要保存最近二天备份,则此处填"2"
www_backup_num="2"
# 需要备份的数据源目录,多个目录要用空格分开。
www_backup_dirs="/home /var/www"
# 需要备份的数据源目录深度,文件夹=0,文件夹+子文件夹=1
www_backup_depth="1"
ftp备份选项
# 是否启用远程ftp备份,0是关闭,1是启用。
enable_ftp_backup="0"
# ftp备份间隔,0表示禁用,1小时=3600秒
ftp_backup_cycle="0"
# ftp备份模式,完全备份=0,增量备份=1
ftp_backup_mode="0"
# 远程ftp存储备份文件夹,如果不存在,则脚本会自动创建。
ftp_remote_dir="vps-bak"
# 远程ftp主机、用户名、密码。
ftp_hostname="192.168.8.128"
ftp_username="test"
ftp_password="test"
scp备份选项
# 是否启用远程scp备份,0是关闭,1是启用。
# 注意:为支持免证书登陆,需安装“expect”(yum -y install expect)
enable_scp_backup="0"
# scp备份间隔,0表示禁用,1小时=3600秒
scp_backup_cycle="0"
# 远程主机、用户名、密码。
scp_host="192.168.8.128"
scp_user="root"
scp_passwd="123456"
# 远程主机存储备份文件夹。
scp_remote_path="/root/vps-bak"
amazon s3备份选项
# 是否启用amazon s3备份,0是关闭,1是启用。
enable_s3_backup="0"
# amazon s3 备份间隔,0表示禁用,1小时=3600秒
s3_backup_cycle="0"
# amazon s3备份模式,完全备份=0,增量备份=1
s3_backup_mode="0"
# amazon s3 bucket名称,如果不存在,则脚本会自动创建。
s3_bucket="vps-bak"
# amazon access key
access_key_id="123456"
# amazon secret access key
secret_access_key="123456"
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/jiaob/shell/11905.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
Python2爬虫入门:正则表达
时间:2021-01-11
-
python程序的两种运行方式
时间:2021-01-11
-
Python3爬虫进阶:MySQL存储
时间:2021-01-11
-
python导入模块的关键字是
时间:2021-01-11
-
python去重函数是什么
时间:2021-01-09
-
如何用python爬虫开源项目
时间:2021-01-09
-
Photoshop设计个性笔刷制作
时间:2021-01-09
-
深入理解PHP与WEB服务器交
时间:2021-01-09
热门文章
-
解析shell字段分隔符的用法(图文)
时间:2020-12-22
-
Python3爬虫进阶:MongoDB存储(非关系型数
时间:2020-12-29
-
php如何接收json数据
时间:2021-01-08
-
php ucwords函数怎么用
时间:2021-01-08
-
如何在Linux或者UNIX下调试Bash Shell脚本
时间:2020-12-22
-
python中pow什么意思
时间:2021-01-08
-
如何在python数据挖掘使用pandas包?
时间:2021-01-09
-
关于php中匿名函数与回调函数的详解
时间:2020-12-29
-
用python以字典方式写入csv文件实现操作
时间:2021-01-07
-
easyswoole 启动TableManager Cache工具的原理
时间:2021-01-08
