ubuntu下MySQL数据库自动备份并发送到指定邮箱

步骤:

安装并配置ubuntu邮件发送环境

创建执行备份并发送邮件的程序

让程序自动定时执行

方法:

步骤一、安装并配置ubuntu邮件发送环境

在ubuntu下安装mutt很方便,只需要sudo apt-get install mutt,另外需要安装msmtp,一个发邮件的小工具,sudo apt-get insall msmtp。这两个文件都很小,一下子就装完了。

接下来是配置文件,也很简单。

1 》安装

sudo apt-get install mutt

sudo apt-get install msmtp

2 》配置

MUTT

-》配置文件路径: /etc/Muttrc

-》在Muttrc文件最后添加以下内容:

set sendmail="/usr/bin/msmtp"

set use_from=yes

set realname="山东讯美科技"

set from=sdxunmei@163.com

set envelope_from=yes

MSMTP

-》在/etc目录下创建msmtprc的配置文件/etc/msmtprc(msmtprc文件默认是没有的,要自己创建)

sudo vi msmtprc

#Accounts will inherit settings from this section

defaults

account    163

host       smtp.163.com

port       25

from       sdxunmei@163.com

auth       login

tls          off

user       sdxunmei@163.com

password   xxxxx---------->这里的密码是网易邮箱的客户端授权密码,不知道怎么获取的常见本文章底部附件链接。

logfile     /var/log/msmtp.log    ------->日志文件

# Set a default account

account default : 163

-》创建上述配置的日志文件

sudo touch /var/log/msmtp.log

-》为了让所有用户都能读写这个日志文件,我们将其权限设置为777

sudo chmod 777 /var/log/msmtp.log

3》到这里,我们测试一下使用mutt来发送邮件。

echo "测试内容" |mutt -s "测试发送邮件" yuqiyu@vip.qq.com

步骤二、创建执行备份并发送邮件的程序

创建文件夹,用来存放备份的文件

sudo mkdir /beifen/mysql

创建备份程序

sudo nano /usr/sbin/bakmysql

编辑bakmysql内容:

sj=`date +%Y%m%d%H%M%S`    ###获取当前时间

mysqldump --all-databases -u username -p pwd>/beifen/mysql/mysql$sj.sql   ###备份全部数据库

添加备份内容

sleep 3   ###休眠三秒,等待数据备份

echo "$sj备份的数据库文件" | mutt -s "mysql$sj" sdxunmei@163.com -a "/beifen/mysql/mysql$sj.sql"    ###发送邮件  -a 导入附件

测试执行一下

/usr/sbin/bakmysql

备份成功!发送成功!

步骤三、让程序自动定时执行

修改/etc/crontab

sudo nano -w /etc/crontab

-w表示不使用自动换行,这个在修改系统文件时必须加上,避免出现问题,在这里可以加可以不加,安全起见还是我是加了~

在下面添加

30 3 * * * root /usr/sbin/bakmysql

注:表示每天3点30分以root用户执行/usr/sbin/bakmysql

重启crontab

sudo service cron restart

附件:163邮箱客户端授权密码怎么获得?

贴图最终效果:

http://jingyan.baidu.com/article/495ba841ecc72c38b30ede38.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏龙渊阁测试精英

Linux内存机制以及手动释放swap和内存

我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念...

1623
来自专栏决胜机器学习

优化页面访问速度(四) ——前端优化

前端的优化,主要可以通过减少HTTP请求、非实时请求改异步、缓存、文件压缩、CDN加速、独立图片服务器等。

1062
来自专栏云计算教程系列

如何在Ubuntu 16.04上使用Concourse CI设置持续集成管道

Concourse CI是一个现代的,可扩展的集成系统,旨在通过可组合的声明性语法自动测试管道。

1242
来自专栏实用工具入门教程

如何搭建微信订阅号后台服务

微信公众号后台自带的功能可能有时不能满足我们的需要,这时候我们就需要搭建自己的服务端。本实验带您从零开始,基于 NodeJS 搭建起一个可以支撑微信订阅号自动回...

4064
来自专栏MoeLove

Open-Falcon监控系统部署

数据库连接的配置格式是: username:password@tcp(path:port)/xxxx

1763
来自专栏GreenLeaves

pl/sql developer安装配置

pl/sql developer是一款第三方的oracle数据库管理工具,是比较受欢迎的一款oracle开发工具,下面将介绍它的安装配置过程。 1、首先去官网下...

1976
来自专栏上善若水

S005SELinux(SEAndroid)的实际文件组成无标题文章

SEAndroid 是将SELinux 移植到Android 上的产物,可以看成SELinux 辅以一套适用于Android 的策略。

1315
来自专栏龙渊阁测试精英

JProfiler简明使用教程

 JProfile是一款性能瓶颈分析工具,监控粒度可以细化到某一个类包,堪称神器!我安装了一下9.11的版本,并简单说说使用方法。

2623
来自专栏信安之路

linux常用下载工具

wget ‐‐output-document=myname.iso http://example.com/file.iso

830
来自专栏极客慕白的成长之路

搭建自己的Git服务器

搭建Git服务器   让我们先看下服务器端SSH访问的配置。在这个例子中,我们使用authorized_keys的方法认证用户。我们假设你的服务器是一个标...

981

扫码关注云+社区