定时备份mysql 到本地,并且发送备份到邮件 mutt

1.安装msmtp

wget https://nchc.dl.sourceforge.net/project/msmtp/msmtp/1.6.6/msmtp-1.6.6.tar

tar xf msmtp-1.6.6.tar.xz && cd msmtp-1.6.6 && ./configure --prefix=/usr/local/msmtp --sysconfdir=/usr/local/msmtp/etc --with-ssl=openssl && sudo make && sudo make install

2. msmtp 配置

vi ~/.msmtprc

account default
port 465
host smtp.163.com
user 1367xxxx
from 1367xxxx@163.com
password xxx
auth login
tls on
tls_starttls off
tls_certcheck off
logfile ~/.msmtp.log

这里要去163邮箱开通smtp,设置授权密码。这边用的是ssl的,所以端口是465. 所以在安装的时候,选择了ssl。如果电脑没有安装openssl,要先安装。

3. mutt 安装

sudo apt-get install mutt

4. mutt 配置

vi ~/.muttrc

set sendmail="/usr/bin/msmtp"
set use_from=yes
set realname="X"
set from=1367xxxx@163.com
set envelope_from=yes

5. 备份mysql 脚本

vi mysql_backup_script.sh

#!/bin/bash

number=31

backup_dir=/home/ubuntu/mysqlbackup

dd=`date +%Y-%m-%d-%H-%M-%S`

tool=mysqldump

username=root

password=xxxx

database_name=blog

if [ ! -d $backup_dir ];
then
    mkdir -p $backup_dir;
fi


$tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
echo "mysql backup"|mutt 513431300@qq.com -s "mysql backup" -a $backup_dir/$database_name-$dd.sql

echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt

delfile=`ls -l -crt  $backup_dir/*.sql | awk '{print $9 }' | head -1`


count=`ls -l -crt  $backup_dir/*.sql | awk '{print $9 }' | wc -l`

if [ $count -gt $number ]
then
  rm $delfile
  echo "delete $delfile" >> $backup_dir/log.txt
fi

chmod +x mysql_backup_script.sh

6. crontab 定时设置任务

0 12 * * * /home/ubuntu/mysql_dump/mysql_backup_script.sh

http://www.waitingfy.com/archives/4794

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓦力冫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值