• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    两个备份数据库的shell脚本

    备份数据库的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脚本定时备份清除运行系统日志的代码
    下一篇:备份网站内容的shell脚本代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    两个备份数据库的shell脚本 两个,备份,数据库,的,shell,