linux定时备份mysql数据库并发送邮件通知

准备工作

使用linux系统mail发送邮件功能,修改配置一下内容:

vim /etc/mail.rc
文件尾增加以下内容 
set from=wangjzh@sarnath.cn smtp="smtp.sarnath.com"
set smtp-auth-user="xxxxxxx@sarnath.cn" smtp-auth-password="xxxxx"
set smtp-auth=login

说明:
from: 对方收到邮件时显示的发件人
smtp: 指定第三方发送邮件的smtp服务器地址
smtp-auth: SMTP的认证方式。默认是LOGIN,也可改为CRAM-MD5或PLAIN方式
smtp-auth-user: 第三方发邮件的用户名
smtp-auth-password: 用户名对应密码

问题

mysql和mysqldump出现command not found 问题解决
1、查找mysql安装路径

find / -name mysql

通常mysql安装路径在:/usr/local/mysql/bin/mysql
2、mysql:command not found建立软连接

ln -s  /usr/local/mysql/bin/mysql  /usr/bin

3、mysqldump:command not found 建立软连接

ln -s  /usr/local/mysql/bin/mysqldump  /usr/bin

备份脚本

dbback.sh

#!/bin/bash
db_ip="192.168.0.189"
db_user="root"
db_passwd="898"
db_name="kongguan"
# the directory for story your backup file.you shall change this dir
backup_dir="/opt/mysqlbackup"
echo ${backup_dir}
# date format for backup file (dd-mm-yyyy)
time="$(date +"%Y%m%d%H%M%S")"
start=`date +%Y-%m-%d_%H:%M:%S`
cd /usr/local/mysql/bin
mysqldump -h $db_ip -P 3306 -u$db_user -p$db_passwd   $db_name > ${backup_dir}/${time}.sql

if [ $? -eq 0 ]
then

#记录结束时间
end=`date +%Y-%m-%d_%H:%M:%S`
echo -e "结束执行备份:$end\n" >> $backup_dir/autolog.log

#发送通知邮件
echo -e "数据库备份完成!\n开始时间:$start\n结束时间:$end" | /bin/mail -s "MySQL备份通知" wangjzh@sarnath.cn

fi

定时执行

每晚22点00分执行数据库备份脚本

0 22 */1 * *

在这里插入图片描述

Linux
*    *    *    *    *    *
-    -    -    -    -    -
|    |    |    |    |    |
|    |    |    |    |    + year [optional]
|    |    |    |    +----- day of week (0 - 7) (Sunday=0 or 7)
|    |    |    +---------- month (1 - 12)
|    |    +--------------- day of month (1 - 31)
|    +-------------------- hour (0 - 23)
+------------------------- min (0 - 59)

在线工具连接:https://tool.lu/crontab

运行效果

在这里插入图片描述

vim autolog.log
结束执行备份:2019-04-17_13:49:49

结束执行备份:2019-04-17_13:59:33

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值