java邮件打包在linux备份数据库练习
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6812982512256549387/
承接上一篇文档《Java实现163邮箱发送邮件到QQ邮箱》
主方法修改获取数据的方式
打包
可以看到打包的位置
选择jar
上传到linux执行
执行语句
java -jar javamail-1.0-jar-with-dependencies.jar /data/qxclxx/shell/test.sql mail.sql 你的邮箱@qq.com
查看邮箱,可以看到是有的
编写一个脚本完成测试数据库的备份
创建脚本
编写脚本
运行脚本
查看邮件成功了
将脚本目录加入搭配环境变量中
查看下
在任意目录直接执行脚本
出现问题
Error: Unable to access jarfile javamail-1.0-jar-with-dependencies.jar
改下权限(省事直接全给了)
chmod -R 777 javamail-1.0-jar-with-dependencies.jar
仍然出现这个错误
在脚本中使用全路径
这次成功了,同时也收到邮件了
写一个定时器,看是否能够定时发送邮件
查看日志
tail -f /var/log/cron
出现错误
mailed 42 bytes of output but got status 0x004b#012
查看日志
cat /var/log/maillog
发现错误
fatal: parameter inet_interfaces: no local interface found for ::1
解决方法:
vim /etc/postfix/main.cf
将:
inet_interfaces = localhost
inet_protocols = all
改成:
inet_interfaces = all
inet_protocols = all
inet_interfaces 参数指定postfix系统监听的网络接口。缺省地,postfix监听所有的网络接口。如果你的postfix运行在一个虚拟的ip地址上,则必须指定其监听的地址。如:
inet_interfaces = all
inet_interface = 192.168.1.1
重新启动
service postfix start
可以查看到下面的内容
里面有错误信息
You have new mail in /var/spool/mail/root
打开可以看到下面的错误内容
sh: mailexe.sh: No such file or directory
crontab 有一个坏毛病, 就是它总是不会缺省的从用户 profile 文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到 crontab 中试图让它定期执行时就是会出错。
修复:在脚本文件的开头,强制要求导入环境变量,可保万无一失。
这样的话,脚本的头部一律以下列格式开头:
#!/bin/sh
. /etc/profile
. ~/.bash_profile
可以将备份的sql发到邮箱了,这样就可以备份很多东西了
java邮件打包在linux备份数据库练习的更多相关文章
- Linux备份数据库,mysqldump命令实例详解
mysqldump是mysql数据库中备份工具,用于将MYSQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中. 语法: mysqldump (选项) 选项: --add-drop-ta ...
- linux自动更新代码,自动备份数据库,打包应用发布
切换root用户 sudo su - 1.安装svn,mysql yum install subversion yum install mysql 2.安装 maven 下载:百度云盘地址为 http ...
- Java项目打包在CMD或者Linux下运行
Java项目打包在CMD或者Linux下运行 1.在CMD下运行 在eclipse中将项目export成jar包,然后用压缩软件解压
- 实现定时备份mysql数据库并把备份数据库邮件发送
一.先来看备份mysql数据库的命令 1 mysqldump -u root --password=root --database abcDataBase > c:/abc_backup.sql ...
- 在linux和windows下自动备份数据库
摘要: 详细介绍在windows和linux下自动备份数据库的过程,希望可以让新手立即上手吧! 本文档内容共分为2大部分:linux和windows Linux和windows都分为:准备工作和操作阶 ...
- linux下mysql定时备份数据库
linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈 一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uu ...
- java实现的MySQL自动备份和还原(struts2+Hibernate)---兼容 window+Linux
相信很多朋友都经历过数据库出问题的情况,我也同样(见我的上一篇博文:phpmyadmin误删表后的恢复过程(心惊胆跳啊) ).如果数据很大或者很重要,那么恢复起来是相当困难的,所以我们在做一个相对 ...
- Linux oracle数据库自动备份自动压缩脚本代码
Linux oracle数据库备份完成后可以自动压缩脚本代码. 复制代码代码如下: #!/bin/bash #backup.sh #edit: www.jbxue.com ##系统名称 sysname ...
- Linux下定时备份数据库
linux下使用crontab定时备份MYSQL数据库的方法只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: mkdir /var/lib/mysqlbackup cd ...
随机推荐
- C#内建接口:IEnumerable
这节讲一下接口IEnumerable. 01 什么是Enumerable 在一些返回集合数据的接口中,我们经常能看到IEnumerable接口的身影.那什么是Enumerable呢?首先它跟C#中的e ...
- Android: Client-Server communication by JSON
Refer to: http://osamashabrez.com/client-server-communication-android-json/ This is a sequel to my l ...
- 一文掌握 Python 的描述符协议
描述符介绍 描述符本质就是一个新式类,在这个新式类中,至少要实现了__get__(),__set__(),__delete__()中的一个.这也被称为描述符协议. class Myclass(obje ...
- axb_2019_fmt32
一道格式字符串的题目,拿到题目例行检查一下 32位的程序开机了nx的保护,将程序放入ida中 发现没有system函数于是进入main主函数进行代码审计 可以看到printf存在明显的格式字符串漏洞 ...
- C# VS 调试报错:未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”或它的某一个依赖项
今天在使用 VS(VisualStudio) 调试一个复杂的 WinForm 程序,总是提示错误: 未能加载文件或程序集"Newtonsoft.Json, Version=4.5.0.0, ...
- 月薪过2w的IT程序员都是怎么做到的?
先说结论:要月入过2万,不能仅仅靠技术,更要找个肯给到这份工资的平台.也就是说,尽量去大城市,尽量去大公司. 我在上海,先说下我知道的薪资情况,基本上,只要有3年开发经验,能过大厂或外企的面试, ...
- AT2642 [ARC076A] Reconciled? 题解
Content 有 \(n\) 只狗和 \(m\) 只猴,现在要把这 \(n+m\) 只动物排成一排,要求相邻两只动物不能同时是狗或者同时是猴.求排列方案总数对 \(10^9+7\) 取模后的值. 数 ...
- linux查看磁盘SN
ls -l /dev/disk/by-id/ | grep -iE <SN>
- libevent实现多线程
libevent并不是线程安全的,但这不代表libevent不支持多线程模式.前几天在微博上看到ruanyf发了条微博说到apache和nginx的并发模型,看到评论很多人都说不对于是自己又查了下,总 ...
- 如何在Uni-app中通过腾讯IM SDK实现社交应用和直播互动等功能
Uni-app想开发社交应用.IM.店铺客服.嵌入式社交模块.在线直播互动,这些功能Uni-app官方也没提供SDK,怎么办呢?找IM老大腾讯云啊,今天我们就在Uni-app中把腾讯云即时通讯TXIM ...