项目适用kettle作为etl工具,源数据库为mysql库,目标库为oracle。在持续的循环调度中,经常发现oracle的数据库连接中断,需要重置。

具体报错信息如下:
INFO  26-12 23:40:13,220 - Kitchen - Logging is at level : Basic logging
INFO  26-12 23:40:13,221 - Kitchen - Start of run.
INFO  26-12 23:40:13,374 - WAN_PT_OLD_SJ_DAY_ADD - Start of job execution
ERROR 26-12 23:42:50,832 - WAN_PT_OLD_SJ_DAY_ADD - A serious error occurred during job execution: org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database

Invalid JNDI connection ETL : IO Error: Connection reset

INFO  26-12 23:42:50,837 - Kitchen - Finished!
ERROR 26-12 23:42:50,837 - Kitchen - Finished with errors
INFO  26-12 23:42:50,838 - Kitchen - Start=2013/12/26 23:40:13.221, Stop=2013/12/26 23:42:50.837
INFO  26-12 23:42:50,838 - Kitchen - Processing ended after 2 minutes and 37 seconds (157 seconds total).

 
将oracle会话超时不设限,并且将机器的防火墙关闭后,问题仍然存在。
网上查阅资料后发现主要问题是oracle 11g 和centos 64的不兼容bug造成的。

可能原因是1:jvm试图展示/tmp文件夹下的内容,但是/tmp文件内内容过多超时;
                2:函数nextBytes(byte[]) 在linux上使用/dev/random计数时,导致登录中断从而超时
解决方法,在sh文件中的java 命令行中增加参数:-Djava.security.egd=file:/dev/../dev/urandom

如在kitchen.sh/pan.sh文件的如下修改后问题即可解决:
 
1.如果显示内存溢出,即可如上图在javamaxmem处增加内存即可,本机设置为10g,一般不超过内存一半即可。
2.如果连接mysql显示时间超时,将mysql数据库的timeout参数调大即可,自己设置如下:

kettle 数据库连接中断重置的更多相关文章

  1. kettle 数据库连接失败

    kettle 数据库连接失败 测试连接提示缺少驱动. 提示错误信息:Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, ...

  2. 数据库连接中断-spring-springBoot

    问题:据库和应用在同一台机,数据库用mysql5.6.20,已经升级druid到最新的1.0.7版本,访问的是localhost的mysql,放一个晚上不访问,第二天访问就报错了,重启服务正常,错误提 ...

  3. kettle数据库连接使用变量

    新增db连接(密码也可以设置参数) 转换中,右键空白处,选择转换设置

  4. 使用BasicDataSource引发的数据库连接中断的问题和解决方法

    http://blog.csdn.net/itbasketplayer/article/details/44198963 http://blog.sina.com.cn/s/blog_9e3e5499 ...

  5. springboot 使用c3p0数据库连接池的方法

    使用springboot开发时,默认使用内置的tomcat数据库连接池,经常碰到这种情况:运行时间一长,数据库连接中断了.所以使用c3p0连接池吧. 引入的maven依赖: <dependenc ...

  6. 为什么HikariCP被号称为性能最好的Java数据库连接池,怎样配置使用

    HiKariCP是数据库连接池的一个后起之秀.号称性能最好.能够完美地PK掉其它连接池. 原文地址:http://blog.csdn.net/clementad/article/details/469 ...

  7. kettle工具同步数据乱码-Linux下乱码问题二

    将写好的kettle工程部署到Linux下后,同步的数据都成了乱码,幸运的是数据库有备份. 下面就说一下,kettle工程如何同步两端编码格式都是utf8的数据库. 我们只需要更改kettle数据库连 ...

  8. springboot 使用c3p0数据库连接池

    springboot 使用c3p0数据库连接池的方法  本文转自:http://www.cnblogs.com/xiaosiyuan/p/6255292.html 使用springboot开发时,默认 ...

  9. 为什么HikariCP被号称为性能最好的Java数据库连接池,如何配置使用

    转自:https://blog.csdn.net/clementad/article/details/46928621 HiKariCP是数据库连接池的一个后起之秀,号称性能最好,可以完美地PK掉其他 ...

随机推荐

  1. postfix 邮件备份方法

    postfix 邮件备份方法: postfix的bcc(密送)功能可以根据条件,将所有经过postfix队列的邮件根据规则密送到指定的邮箱. postfix带有三个bcc参数: ①.always_bc ...

  2. LeetCode Search a 2D Matrix II (技巧)

    题意: 有一个矩阵,每行有序,每列也有序.判断一个数target是否存在于此矩阵中. 思路: 从右上角开始,如果当前数字<target,则该行作废.若当前数字>target,该列作废.这样 ...

  3. linux服务器并发与tcmalloc

    前一天使用pmap查看服务器中自己开发的游戏服务的内存使用情况,发现其中数据存储服务的内存占用率非常高,截图如下. 从截图中可以看出来,分配了大量的64MB左右的内存空间,因为对自己的服务比较了解,知 ...

  4. 如何在ALV_Grid的函数中定义下拉列表

    转自 http://www.cnblogs.com/VerySky/articles/2392262.htmlABAP--如何在ALV_Grid的函数中定义下拉列表 REPORT. ********* ...

  5. Javascript模块化编程(三):require.js的用法【转】

    作者: 阮一峰 日期: 2012年11月 7日 这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战. 我采用的是一个非常流行的库require.js ...

  6. 转:【Spring MVC Controller单例陷阱】

    http://lavasoft.blog.51cto.com/62575/1394669/ Spring MVC Controller默认是单例的: 单例的原因有二:1.为了性能.2.不需要多例. 1 ...

  7. Samba服务器安装及配置

    Samba最早诞生在unix操作系统上面,samba是基于SMB(Server Message Block)协议,是一种客户端服务器协议 一.安装samba # yum -y install samb ...

  8. Java——设计模式(装饰模式_IO)

     /* * 装饰设计模式: *  对一组对象的功能进行增强时,就可以使用该模式进行问题的解决; * 装饰和继承都能实现一样的特点:  就是进行功能的扩转增强. * */ public class  ...

  9. Java设计模式之简单工厂设计模式

    简单工厂将业务逻辑部分和界面逻辑部分分离开来,降低了界面逻辑和业务逻辑的耦合度,符合面向对象迪米特法则.下面以一个加法减法运算器为例,各位读者可以自行按照这种设计方式设计出一个小小的运算器. 1.业务 ...

  10. java CS结构软件自动升级的实现

    前段时间做了一个工具发布给公司的各部门使用后反馈了不少BUG,每次修改后均需要发邮件通知各用户替换最新版本,很不方便,因此后来就写了一个自动升级的功能,这样每次发布新的版本时只需要将其部署到自动升级服 ...