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

网友投稿 624 2022-10-05

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

1.安装msmtp

​​wget 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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot+WebSocket实现即时通讯的方法详解
下一篇:Windows与网络基础:Windows组管理和NTFS权限
相关文章

 发表评论

暂时没有评论,来抢沙发吧~