安全中心  >  关于linux下数据库与网站备份方案

关于linux下数据库与网站备份方案

作者:电联通信  访问次数:188次  更新时间:2017-10-25 14:44  原创

本公司提供免费的FTP空间用于客户数据备份,如果需要申请免费备份空间请联系客服,技术将协助你部署自动备份脚本到您的服务器:
如下以CentOS为例:
1、安装FTP客户端:

		
  1. yum install ftp
2、部署备份脚本到定时任务;

		
  1. crontab -e
添加如下内容(每天凌晨2点自动执行备份脚本):

		
  1. 00 02 * * * /data/sh/bakup.sh
3、备份程序部署完成后,请人工定时登陆FTP检查备份文件的有效性,本公司保证FTP可靠,因脚本执行结果受系统环境和权限的影响,本公司不对自动备份的数据有效性做保证。
 
附加备份脚本:

		
  1. #!/bin/sh
  2. BAK_DIR="/data/backup/idc" #本机备份文件临时存储目录
  3. WEB_DIR="/data/web/idc/*" #要备份的网站文件
  4. FTP_USER="htu" #FTP用户名
  5. FTP_PWD="htu" #FTP密码
  6. DB="XXX" #要备份的数据库
  7. DB_PWD="XXXXXX" #数据库root 用户密码
  8. DATE_TIME=$(date +%F-%T)
  9. DATE=$(date +%Y%m%d)
  10. MYLOG_DIR='/var/log/mylogs'
  11. mkdir -p /var/log/mylogs
  12. DATE_TIME=$(date +%F-%T)
  13. if [ -d BAK_DIR ]; then
        chmod -R 755 $BAK_DIR
    else
        mkdir -p $BAK_DIR
        chmod -R 755 $BAK_DIR
    fi
  14. #web backup
    tar -zcPf $BAK_DIR/web_$DATE.tar.gz $WEB_DIR 2>&1
    re1=$?
    if [[ $re1 == 0 ]]; then
        /bin/sync
        /bin/sync
        sleep 5
        echo "Data has been completed package! $DATE_TIME" >> $MYLOG_DIR/databak.log
     
    else
        echo "Web completed package Fail!" >> $MYLOG_DIR/databak.log
    fi
  15. #database backup
    mysqldump -u root -p$DB_PWD $DB > $BAK_DIR/db_$DATE.sql
    re2=$?
    if [[ $re2 == 0 ]]; then
        echo "Database Export Completed! $DATE_TIME" >> $MYLOG_DIR/databak.log
    else
        echo "Database Export Fail!" >> $MYLOG_DIR/databak.log
    fi
    if [[ $re1 == 0 ]] && [[ $re2 == 0 ]]; then
    echo "Began to upload file  $DATE_TIME" >> $MYLOG_DIR/databak.log
    ftp -n<<!
    open 42.51.152.254
    user $FTP_USER $FTP_PWD
    binary
    hash
    cd /
    lcd $BAK_DIR
    prompt
    mput *
    close
    bye
    !
    echo "Upload successful! $DATE_TIME" >> $MYLOG_DIR/databak.log
    fi
    rm -rf $BAK_DIR/*

上一篇:Windows下网站云备份 下一篇:电联通信提醒-数据安全对一个企业的重要性