首页 > PHP开发 > MySQL 自动备份并发送到邮箱

MySQL 自动备份并发送到邮箱

作者: 分类:PHP开发 点击: 33 次
wordpress CMS主题:ssmay主题

    准备工作

    阅读本文章之前请先查看 mutt 邮件发送 并搭建好邮件发送环境。本文假定你已经搭建好了 mysql 环境,并且能使用 msyqldump 命令

    备份脚本

    mkdir -p /data/backup/mysql
    chown xxx:xxx /data/backup
    mkdir /opt/shells

    vim /data/shells/mysqlBackup.sh

    #!/bin/bash

    BACKUP_PATH=/data/backup/mysql
    CURRENT_TIME=$(date +%Y%m%d_%H%M%S)

    [ ! -d "$BACKUP_PATH" ] && mkdir -p "$BACKUP_PATH"

    #数据库地址
    HOST=localhost
    #数据库用户名
    DB_USER=root
    #数据库密码
    DB_PW=password

    # 要备份的数据库名
    DATABASE=blog
    FILE_GZ=${BACKUP_PATH}/$CURRENT_TIME.$DATABASE.sql.gz
    /usr/local/bin/mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --
    databases $DATABASE | gzip > $FILE_GZ # 此处必须要用绝对路径

    # 所有数据库
    #mysqldump --all-databases -xxxxx

    echo "数据库备份--$FILE_GZ" | mutt -s "$DATABASE备份" ucer183@163.com -a
    $FILE_GZ

    # 删除 7 天以前的备份 「注意写法」
    cd $BACKUP_PATH
    find $BACKUP_PATH -mtime +7 -name "*sql.gz" -exec rm -f {} \;

    chmod u+x mysqlBackup.sh

    # 执行下脚本看看有没有错误;
    ./mysqlBackup.sh

     

    凌晨三点三十分执行一次

    crontab -e
    30 03 * * * /data/shells/mysqlBackup.sh

    do it now

文章作者:sunny
本文地址:http://wanlimm.com/77201807125899.html
版权所有 © 转载时必须以链接形式注明作者和原始出处!

上一篇:
下一篇:
wordpress CMS主题:ssmay主题

或许你会感兴趣的文章:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.