美文网首页
最简mysql定时备份和恢复

最简mysql定时备份和恢复

作者: 中v中 | 来源:发表于2021-07-07 10:13 被阅读0次

    此教程是为了使用crontab定时执行备份mysql脚本来达到备份数据库的功能

    1.首先创建一个bash 文件

    mkdir back.sh
    chmod 777 back.sh
    

    2.编写 back.sh

    #!/bin/bash
    time=`date +%Y%m%H:%M:%y`
    ###################数据库配置信息#######################
    user=数据库用户名
    passwd=数据库密码
    dbname=数据库名字
    mysql_back_path=备份的数据文件存放地址
    ###################数据库配置信息#######################
    #/usr/bin/mysqldump -u$user -p$passwd $dbname > $mysql_back_path/$time.sql
    ## 即时gzip压缩
    /usr/bin/mysqldump -u$user -p$passwd $dbname | gzip > $mysql_back_path/$time.sql.gz
    
    

    3.编写crontab定时任务

    crontab -e
    
    */1 * * * * /bin/sh /www/back.sh
    0 6 * * * /bin/sh /www/back.sh
    
    以上是每分钟和定时6点备份的写法,具体可网上搜索crontab配置具体配置
    

    根据个人安装路径的不同,命令路径也有所不同,可以根据

    find / -name mysqldump -print

    这条命令来查询,配置完成后,即可等待定时任务自动备份完成。

    demo

    #!/bin/bash
    time=`date +%Y%m%d_%H:%M:%y`
    ###################数据库配置信息#######################
    user=root
    passwd=@@@@@@
    dbname=ess
    mysql_back_path=/backup/db
    ###################数据库配置信息#######################
    #/usr/bin/mysqldump -u $user -p$passwd $dbname --ignore-table=ess.sys_log > $mysql_back_path/$time.sql
    /usr/bin/mysqldump -u $user -p$passwd $dbname --ignore-table=ess.sys_log | gzip >  $mysql_back_path/$time.sql.gz
    
    

    恢复

    1. 解压gzip
    gunzip 20210915_11\:24\:21.sql.gz 
    2. mysql 导入数据库test
    mysql -uroot -paaaa test < 20210915_11\:24\:21.sql 
    

    相关文章

      网友评论

          本文标题:最简mysql定时备份和恢复

          本文链接:https://www.haomeiwen.com/subject/msloultx.html