两个备份数据库的shell脚本(两个备份数据库怎么合并)

admin3年前云主机24

备份数据库的shell脚本一
复制代码 代码如下:
#!/bin/bash
#指定运行的脚本shell
#运行脚本要给用户执行权限
bakdir=/backup
month=`date +%m`
day=`date +%d`
year=`date +%Y`
hour=`date +%k`
min=`date +%M`
dirname=$year-$month-$day-$hour-$min
mkdir $bakdir/$dirname
mkdir $bakdir/$dirname/conf
mkdir $bakdir/$dirname/web
mkdir $bakdir/$dirname/db
#热备份数据库
cp /opt/mysql/my.cnf $bakdir/$dirname/db/my.cnf
cd /opt/mysql
mysqldump --opt -u zhy -p --password=1986 test>$bakdir/$dirname/db/test.sql
mysqldump --opt -u zhy -p --password=1986 phpwind>$bakdir/$dirname/db/phpwind.sql
#远程拷贝的内容介绍要有可写权限
scp -r /backup/$dirname root@10.1.1.178:/backup

数据库备份脚本shell二
复制代码 代码如下:
[plain]
#!/bin/bash   
#---------------------------- 
#Target machine configuration 
#---------------------------- 
#DBUser->Database user name 
#DBPasswd->Database password ,not null 
#DBName->Database name 
#SERVER->IP address 
#---------------------------- 
DBUser=**** 
DBPasswd=**** 
DBName=***** 
SERVER=**** 

#-------------------------------- 
#The local machine configuration 
#-------------------------------- 
#LocalDBUser->Database user name 
#LocalDBPasswd->Database password,not null 
#LocalDBName->Database name 
#BackupPath->Backup path,end with '/' 
#LogFile->Log file 
#num->backup numbers 
#-------------------------------- 
LocalDBUser=** 
LocalDBPasswd=*** 
LocalDBName=**** 
BackupPath=**** 
LogFile=**** 
#num=2 -----> Has not been completed 
#------------------------------- 

#------------------------------- 
#Other configuration 
#------------------------------- 
#IgnoreTables->ignore tables,like this: 
#IgnoreTables= '--ignore-table=DBName.TableName1 --ignore-table=DBName.TableName2 .....' 
#NeedTables->need backup tables,if you want to backup all tables,please let it empty 
#like this: NeedTables='table1 table2 table3' 
#------------------------------- 
IgnoreTables='****‘  
NeedTables= 
#begin 

NewFile="$BackupPath"dbBackup$(date +%y%m%d).sql   
OldFile="$BackupPath"dbBackup$(date +%y%m%d --date='5 days ago').sql  

echo "-------------------------------------------" >> $LogFile   
echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile   
echo $(date +%y%m%d --date='5 days ago') >>$LogFile 
echo "--------------------------" >> $LogFile   
#Delete Old File 
if [ -f $OldFile ]   
then   
   rm -f $OldFile >> $LogFile 2>&1   
   echo "[$OldFile]Delete Old File Success!" >> $LogFile   
else   
   echo "[$OldFile]No Old Backup File!" >> $LogFile   
fi   
if [ -f $NewFile ]   
then   
   echo "[$NewFile]The Backup File is exists,Can't Backup!" >> $LogFile  
   echo "Begin ro recover the data...."   
   mysql -u$LocalDBUser -p$LocalDBPasswd --default-character-set='utf8' $LocalDBName <$NewFile 
   echo "Data has been restored!" >>$LogFile 
else   
    mysqldump -h$SERVER -u$DBUser -p$DBPasswd --default-character-set='utf8' --quick --single-transaction  $DBName  $NeedTables    $IgnoreTables  >$NewFile 
    echo "[$NewFile]Backup Success!" >> $LogFile   
fi 
echo "-------------------------------------------" 
echo "作者 陈建虹"

 

《两个备份数据库的shell脚本(两个备份数据库怎么合并)》来自互联网同行内容,若有侵权,请联系我们删除!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

aviarhost怎么样

AviarHost是什么?AviarHost是一家提供Web托管、域名注册及网站设计开发的公司。其产品涵盖各种适用于个人、企业和网站管理员的网站托管方案以及完整的网站开发解决方案。AviarHost的...

《主机备案攻略:快速办理备案,轻松建站上线》

《主机备案攻略:快速办理备案,轻松建站上线》是一篇介绍如何快速办理主机备案和建站的文章。本文将从四个方面详细阐述相关内容,包括备案前需知、备案申请、备案审核以及备案完成后的注意事项。这篇文章的目的在于...

个人网站备案要求

个人网站备案要求在互联网时代,拥有一个个人网站越来越流行。但是,若想让个人网站正常运行,合法合规,需要进行备案。备案是指将个人或企业的网站信息向政府机构注册的过程,现在备案已成为开网站的必要环节。本文...

国外高防服务器:网络安全领域的坚实防线

随着互联网的发展,网络安全问题也越来越受到人们的关注。国外高防服务器成为了网络安全领域的坚实防线。本文从四个方面对国外高防服务器进行详细的阐述:高防服务器的概念和作用、高防服务器的特点、高防服务器的优...

接收邮件服务器怎么填

什么是接收邮件服务器?接收邮件服务器是一种计算机程序或设备,用于接收邮件并将其存储到一个或多个电子邮件收件箱中。邮件可以在用户登录到服务器或通过某种客户端应用程序访问时进行查看。如何填写接收邮件服务器...

linux shell内置判断语句(linux shell 判断)

内置判断,成功的时候返回0,不成功返回非零test  判断表达式[ 判断表达式 ]       注意前后必须留空格哦数值运算-eq...