zoukankan      html  css  js  c++  java
  • 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备份数据库练习
  • 相关阅读:
    BOM与DOM
    前端基础之JavaScript
    前端基础之css
    前端基础之HTML
    索引与慢查询优化
    视图、触发器、事务、存储过程、函数、流程控制
    pymysql模块
    mysql的基本查询语句及方法
    ie6 select选中问题
    offsetLeft
  • 原文地址:https://www.cnblogs.com/bqwzy/p/12656872.html
Copyright © 2011-2022 走看看