代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Shell
】
网站数据备份和网站文件打包。
作者:
范小伟
/ 发布于
2014/4/8
/
932
#!/bin/bash #定义此脚本存在的目录(根部目录) shelldir='backup' #定义数据库账户 user='root' #定义数据库用户密码 password='meiyoumima' #定义生成的目录名称 dirname='huyuaning.com' #定义要备份的数据库名称 mysqlname='huyuaning' #定义网站文件的绝对路径 webfile='/var/www/huyuaning.com/' #定义网站文件打包后生成的文件名 tarname='huyuaning.com' #定义信息文件的名称 infofilename='huyuaning.com' #定义当前时间 now=`date +%y.%m.%d-%H:%M:%S` #####################变量定义结束######################### #如果目录不存在就创建目录 if [ ! -d /$shelldir/$dirname/ ];then #不是目录 #创建目录 /bin/mkdir /$shelldir/$dirname/ #设置目录权限 /bin/chmod 777 /$shelldir/$dirname/ fi #输出重定向到文件 /bin/touch /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info /bin/chmod 777 /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info echo $now '--- 开始备份数据...' > /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #获得MYSQL开始备份的时间 mysqlstart=`date +%s` #把数据内容重定向到执行备份的文件,把错误信息重定向到信息文件 /bin/touch /$shelldir/$dirname/$mysqlname.`date +%y.%m.%d`.sql /bin/chmod 777 /$shelldir/$dirname/$mysqlname.`date +%y.%m.%d`.sql /usr/bin/mysqldump -u$user -p$password $mysqlname > /$shelldir/$dirname/$mysqlname.`date +%y.%m.%d`.sql 2>>/$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #判断上面的命令是否出错,如果出错就删除生成的备份文件 #上一个命令执行成功 if [ $? -eq 0 ];then #数据备份成功 #先把数据备份成功的信息重定向到信息文件 #获得数据文件大小 filesize=`/usr/bin/du -h /$shelldir/$dirname/$mysqlname.$(date +%y.%m.%d).sql |awk -F ' ' '{print $1}'` #获得MYSQL结束备份的时间 mysqlend=`date +%s` #获得MYSQL备份耗时,单位秒 mysqltime=$[mysqlend-mysqlstart] #重新向数据备份信息 echo "$now --- 数据备份成功:$mysqlname.`date +%y.%m.%d`.sql 大小:$filesize 耗时:$mysqltime秒" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #开始备份文件 ################################################### echo "$now --- 开始备份文件..." >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #定义开始备份文件的时间 tarstart=`date +%s` /bin/tar -zPcf /$shelldir/$dirname/$tarname.`date +%y.%m.%d`.tgz $webfile 2>>/$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #上一个命令执行成功(打包网站文件的命令) if [ $? -eq 0 ];then #网站文件打包成功 #结束备份文件的时间 tarend=`date +%s` #获得备份耗时 tartime=$[tarstart-tarend] #转换成分钟 tarfen=`echo "sclae=2; $tartime/60" | bc` #获得数据文件大小 tarsize=`/usr/bin/du -h /$shelldir/$dirname/$tarname.$(date +%y.%m.%d).tgz |awk -F ' ' '{print $1}'` echo "$now --- 文件备份成功:$tarname.`date +%y.%m.%d`.tgz 大小:$tarsize 耗时:$tarfen分" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info else #网站文件打包失败 #删除备份的网页文件 echo "$now --- 网页文件打包失败!" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info /bin/rm -rf /$shelldir/$dirname/$tarname.`date +%y.%m.%d`.tgz #判断是否删除成功 if [ $? -eq 0 ]; then #删除文件成功 echo "$now --- 出错的网页打包文件$tarname.`date +%y.%m.%d`.tgz删除成功!" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info else #删除文件失败 echo "$now --- 出错的网页打包文件$tarname.`date +%y.%m.%d`.tgz删除失败!" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info fi fi #上一个命令执行失败(数据备份失败) else #删除生成的备份文件 /bin/rm -rf /$shelldir/$dirname/$mysqlname.`date +%y.%m.%d`.sql #把删除信息写入信息文件 #上一个命令执行成功(删除出错的备份文件命令) if [ $? -eq 0 ];then echo "$now --- 数据备份失败!" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info echo "$now --- 出错的备份文件删$mysqlname.`date +%y.%m.%d`.sql除成功" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info #上一个命令执行失败(删除出错的备份文件命令) else echo "$now --- 数据备份失败!" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info echo "$now --- 出错的备份文件删$mysqlname.`date +%y.%m.%d`.sql除失败" >> /$shelldir/$dirname/$infofilename.`date +%y.%m.%d`.info fi fi
试试其它关键字
网站数据备份
同语言下
.
判断用户输入的是否为IP地址
.
根据web访问日志,封禁请求量异常的IP,如IP在半小时
.
iptables自动屏蔽访问网站频繁的IP
.
批量修改服务器用户密码
.
监控httpd的进程数,根据监控情况做相应处理
.
创建10个用户,并分别设置密码,密码要求10位且包含大
.
Expect实现SSH免交互执行命令
.
输入数字运行相应命令
.
用shell打印示例语句中字母数小于6的单词
.
扫描主机端口状态
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
范小伟
贡献的其它代码
(
1
)
.
网站数据备份和网站文件打包。
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3