嵌入式开发交流网论坛
标题:
java邮件打包在linux备份数据库练习
[打印本页]
作者:
达益IPHONE
时间:
2020-4-16 00:53
标题:
java邮件打包在linux备份数据库练习
承接上一篇文档《Java实现163邮箱发送邮件到QQ邮箱》
主方法修改获取数据的方式
[attach]41775[/attach]
打包
[attach]41776[/attach]
可以看到打包的位置
[attach]41777[/attach]
选择jar
[attach]41778[/attach]
上传到linux执行
[attach]41779[/attach]
执行语句
java -jar javamail-1.0-jar-with-dependencies.jar /data/qxclxx/shell/test.sql mail.sql 你的邮箱@qq.com
[attach]41780[/attach]
查看邮箱,可以看到是有的
[attach]41781[/attach]
编写一个脚本完成测试数据库的备份
创建脚本
[attach]41782[/attach]
编写脚本
[attach]41783[/attach]
[attach]41784[/attach]
运行脚本
[attach]41785[/attach]
查看邮件成功了
[attach]41786[/attach]
将脚本目录加入搭配环境变量中
[attach]41787[/attach]
查看下
[attach]41788[/attach]
在任意目录直接执行脚本
[attach]41789[/attach]
出现问题
Error: Unable to access jarfile javamail-1.0-jar-with-dependencies.jar
改下权限(省事直接全给了)
chmod -R 777 javamail-1.0-jar-with-dependencies.jar
[attach]41790[/attach]
仍然出现这个错误
在脚本中使用全路径
[attach]41791[/attach]
这次成功了,同时也收到邮件了
[attach]41792[/attach]
写一个定时器,看是否能够定时发送邮件
查看日志
tail -f /var/log/cron
出现错误
mailed 42 bytes of output but got status 0x004b#012
[attach]41793[/attach]
查看日志
cat /var/log/maillog
发现错误
fatal: parameter inet_interfaces: no local interface found for ::1
[attach]41794[/attach]
解决方法:
vim /etc/postfix/main.cf
将:
inet_interfaces = localhost
inet_protocols = all
[attach]41795[/attach]
改成:
inet_interfaces = all
inet_protocols = all
[attach]41796[/attach]
inet_interfaces 参数指定postfix系统监听的网络接口。缺省地,postfix监听所有的网络接口。如果你的postfix运行在一个虚拟的ip地址上,则必须指定其监听的地址。如:
inet_interfaces = all
inet_interface = 192.168.1.1
重新启动
service postfix start
[attach]41797[/attach]
可以查看到下面的内容
[attach]41798[/attach]
里面有错误信息
You have new mail in /var/spool/mail/root
打开可以看到下面的错误内容
sh: mailexe.sh: No such file or directory
[attach]41799[/attach]
crontab 有一个坏毛病, 就是它总是不会缺省的从用户 profile 文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到 crontab 中试图让它定期执行时就是会出错。
修复:在脚本文件的开头,强制要求导入环境变量,可保万无一失。
这样的话,脚本的头部一律以下列格式开头:
#!/bin/sh
. /etc/profile
. ~/.bash_profile
[attach]41800[/attach]
可以将备份的sql发到邮箱了,这样就可以备份很多东西了
[attach]41801[/attach]
欢迎光临 嵌入式开发交流网论坛 (http://www.dianzixuexi.com/bbs/)
Powered by Discuz! X3.2