zoukankan      html  css  js  c++  java
  • Centos上通过shell脚本实现数据库备份和还原

    最近有个这样的需求,通过shell脚本实现数据库备份还原,最后通过网上查询自己测试实现,将脚本分享给大家

    1、数据库备份脚本

    #!/bin/bash
    
    ds=`date +%s%N|cut -c1-13`
    list=`date +%Y`/`date +%m`
    dname="callme"
    eval "mkdir -p $list"
    
    ls_date=`date +%Y%m%d`
    echo ${ls_date}
    bk="mysqldump -R -E -h 127.0.0.1 -uroot -ppass ${dname} --result-file=${list}/${dname}-${ls_date}.sql"
    echo $bk
    eval $bk
    cd $list
    tar -czf callme-${ls_date}.tar.gz *.sql
    rm -rf *.sql
    
    cd ../..
    mkdir -p logs/$list
    cd logs/$list
    
    de=`date +%s%N|cut -c1-13`
    
    echo -e "`date +%Y%m%d%H%M%S` 数据备份成功" >> ${dname}.${ls_date}.log
    echo -e "Running time:: $((${de}-${ds}))" >> ${dname}.${ls_date}.log
    echo -e "Running time:: $((${de}-${ds}))"

    2、数据库还原脚本

    #!/bin/bash
    
    ds=`date +%s%N|cut -c1-13`
    name="callme"
    mk="2017/12"
    file_name="callme-20171219"
    file_name_sql="${file_name}.sql"
    file_name_tar="${file_name}.tar.gz"
    pwd="pass"
    
    cd ${mk}
    tar -zxvf $file_name_tar
    
    mysql -f -h 127.0.0.1  -uroot -p${pwd}  <<EOF
    
    create database if not exists ${name};
    use ${name};
    source ${file_name_sql};
    
    EOF
    
    de=`date +%s%N|cut -c1-13`
    echo -e "Running time:: $((${de}-${ds}))"
  • 相关阅读:
    jquery在线手册
    bootstrap学习之路
    实用的cmd命令
    在源代码中插入防止盗版代码片段的方式
    常用的正则表达式
    仿站步骤
    thinkphp 公用函数
    php switch判断一个数所在的范围
    ps学习教程
    九度oj 题目1185:特殊排序
  • 原文地址:https://www.cnblogs.com/cbread/p/8084417.html
Copyright © 2011-2022 走看看