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 条评论
登录 后参与评论

相关文章

来自专栏我的博客

ssh无密码登陆和只允许指定账号登陆

需求:A主机可以无密码登陆B主机,并且只能在A主机使用root登陆B主机 步骤: 1、生成公钥ssh-keygen -t rsa -P ”;-P表示密码,-P ...

35410
来自专栏刺客博客

Centos下新增用户及提权方法

3252
来自专栏用户2442861的专栏

npm bower安装和使用

注:bower下载安装依赖库实际上是使用git进行下载。对于linux系统,由于默认都有安装git,所以一般没问题。但是windows系统一般没有git。在wi...

671
来自专栏Ken的杂谈

【Ubuntu系统上手】一、Ubuntu基本命令

621
来自专栏编程

Nginx的编译

软件源码的处理(一般是删除,属于选做) 软件编译安装的注意事项: rpm和yum一起已经可以解决的软件,尽量不要自己编译安装。 软件的编译,一般需要编译环境以及...

2525
来自专栏杂七杂八

CentOS安装python3.6

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel r...

642
来自专栏我思故我在

在CentOS7.1上安装Gitlab碰到的问题及解决方法

1443
来自专栏蛋未明的专栏

Node.js从入门到深入——Node.js配置开发

1584
来自专栏青青天空树

linux下安装nodejs及npm

官网下载npm安装包,https://nodejs.org/en/,左边是稳定版右边是最新版。

802
来自专栏Python攻城狮

Python开发环境搭建1.下载及安装2.一台PC安装多个python版本3.python2和python3版本共存的配置4. pip安装模块时执行的命令5.给python安装第三方模块6.查看pip

现在python3是趋势,很多公司已经逐渐使用python3,但是对于爬虫来说,我们现在仍需用2.7,所以现在我们安装Python2.7.9版本

703

扫码关注云+社区