java邮件打包在linux备份数据库练习

注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6812982512256549387/

承接上一篇文档《Java实现163邮箱发送邮件到QQ邮箱

主方法修改获取数据的方式

java邮件打包在linux备份数据库练习

 

打包

java邮件打包在linux备份数据库练习

 

可以看到打包的位置

java邮件打包在linux备份数据库练习

 

选择jar

java邮件打包在linux备份数据库练习

 

上传到linux执行

java邮件打包在linux备份数据库练习

 

执行语句

java -jar javamail-1.0-jar-with-dependencies.jar /data/qxclxx/shell/test.sql mail.sql 你的邮箱@qq.com

java邮件打包在linux备份数据库练习

 

查看邮箱,可以看到是有的

java邮件打包在linux备份数据库练习

 

编写一个脚本完成测试数据库的备份

创建脚本

java邮件打包在linux备份数据库练习

 

编写脚本

java邮件打包在linux备份数据库练习

 

java邮件打包在linux备份数据库练习

 

运行脚本

java邮件打包在linux备份数据库练习

 

查看邮件成功了

java邮件打包在linux备份数据库练习

 

将脚本目录加入搭配环境变量中

java邮件打包在linux备份数据库练习

 

查看下

java邮件打包在linux备份数据库练习

 

在任意目录直接执行脚本

java邮件打包在linux备份数据库练习

 

出现问题

Error: Unable to access jarfile javamail-1.0-jar-with-dependencies.jar

改下权限(省事直接全给了)

chmod -R 777 javamail-1.0-jar-with-dependencies.jar

java邮件打包在linux备份数据库练习

 

仍然出现这个错误

在脚本中使用全路径

java邮件打包在linux备份数据库练习

 

这次成功了,同时也收到邮件了

java邮件打包在linux备份数据库练习

 

写一个定时器,看是否能够定时发送邮件

查看日志

tail -f /var/log/cron

出现错误

mailed 42 bytes of output but got status 0x004b#012

java邮件打包在linux备份数据库练习

 

查看日志

cat /var/log/maillog

发现错误

fatal: parameter inet_interfaces: no local interface found for ::1

java邮件打包在linux备份数据库练习

 

解决方法:

vim /etc/postfix/main.cf

将:

inet_interfaces = localhost

inet_protocols = all

java邮件打包在linux备份数据库练习

 

改成:

inet_interfaces = all

inet_protocols = all

java邮件打包在linux备份数据库练习

 

inet_interfaces 参数指定postfix系统监听的网络接口。缺省地,postfix监听所有的网络接口。如果你的postfix运行在一个虚拟的ip地址上,则必须指定其监听的地址。如:

 

inet_interfaces = all

inet_interface = 192.168.1.1

 

重新启动

service postfix start

java邮件打包在linux备份数据库练习

 

可以查看到下面的内容

java邮件打包在linux备份数据库练习

 

里面有错误信息

You have new mail in /var/spool/mail/root

打开可以看到下面的错误内容

sh: mailexe.sh: No such file or directory

java邮件打包在linux备份数据库练习

 

 

crontab 有一个坏毛病, 就是它总是不会缺省的从用户 profile 文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到 crontab 中试图让它定期执行时就是会出错。

修复:在脚本文件的开头,强制要求导入环境变量,可保万无一失。

这样的话,脚本的头部一律以下列格式开头:

#!/bin/sh

. /etc/profile

. ~/.bash_profile

java邮件打包在linux备份数据库练习

 

可以将备份的sql发到邮箱了,这样就可以备份很多东西了

java邮件打包在linux备份数据库练习

posted on   那山的狐狸  阅读(193)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示