• mysql备份与保存


    脚本需求:

    每天备份mysql数据库,保留7天的脚本。

    存放在/opt/dbbak目录中。

    脚本名称为database_xxxx-xx-xx.sql

    脚本内容:

    1
    2
    3
    4
    5
    #!/bin/bash
    export NOW="$(date +"%Y-%m-%d")"
    export DATA_DIR=/opt/dbbak
    /usr/local/ywgh/mysql/bin/mysqldump --opt -uroot –p 'mypassword' ywghblog > $DATA_DIR/ywghblog/ywghblog_$NOW.sql
    find $DATA_DIR/ywghblog -type f -name "*.sql" -mtime +7 -exec rm -rf {} ;

    脚本解释:

    首先定义一个变量NOW取当前的年月日,

    在定义一个目录的变量DATA_DIR,

    然后使用mysqldump命令将要备份的库备份到指定的目录,

    最后使用find命令找到指定目录的sql文件,并且将7天之外的文件删除。

    -mtime + 就是找到7天之外的文件

    -mtime – 就是找到7天之内的文件

    -exec就是执行后边的命令

    请根据自己的需求修改脚本。

    知识点扩展:自动备份MYSQL数据库脚本

    vi dbbackup.sh在打开的编辑器输入:

    1
    2
    #!/bin/bash
    /usr/local/mysql/bin/mysqldump -uuser -ppasswd databasename > /home/wwwroot/backup/date_$(date '+%Y%m%d').sql

    命令的意思是用mysqldump导出名为databasename的数据库到/home/wwwroot/backup/文件夹并命名为date_日期.sql,-u后面的是你的Mysql的用户名,-p后面的是Mysql密码,databasename是要备份数据库名字,把这三个替换成自己的。

    修改权限并执行备份脚本看能否备份成功:

    1
    2
    chmod +x dbbackup.sh
    sh dbbackup.sh

    如果一切检查没问题了,就创建定时任务自动备份你的数据吧,输入命令:

    crontab -e

    在打开的文件输入定时任务:

    56 23 * * * /root/dbbackup.sh

    然后按esc键后输入:wq退出编辑并保存文件。

    好了,定时任务创建好了,每天23点56分备份执行dbbackup.sh备份数据库。

  • 相关阅读:
    Android Butterknife(黄油刀) 使用方法总结【转】
    Andriod- 一些包
    Andriod- 学习网站
    Android热点 8.0 ,7.1 ,6.0一7.0 以及6.0以下热点创建到连接完全适配
    Android- 动态修改ToolBar的Menu菜单
    C#- Socket实现服务器与多个客户端通信
    html使用pdf.js途中遇到的坑和坑
    小程序内嵌H5页面和小程序内部页面互相传参和内嵌H5页面的调试
    记录一次Centos7宕机事件
    Spring Boot 2.x实战
  • 原文地址:https://www.cnblogs.com/liqing1009/p/14357879.html
Copyright © 2020-2023  润新知