kettle作业连接mysql资源库8小时后报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kettle作业连接mysql资源库8小时后报错相关的知识,希望对你有一定的参考价值。

参考技术A kettle作业在运行一段时间后会报错,原因是mysql会默认每8小时回收一次无用连接。
错误日志如下:

然后你的作业就失败了,必须重新启动kettle才能解决。
经过多次排查,最终解决。

加上 autoReconnect=true 参数

虽然能解决8小时mysql自动丢弃无用连接的问题,但是不能解决mysql宕机后的自动重连。

修改方式,自行百度

例如wait_timeout是8小时,只需把调度周期设为<8小时即可

在kettle5.4测试不通过,在kettle7测试通过。
配置数据源连接时,采用连接池,配置如下

关于连接池参数,kettle使用的是apache dbcp connetions pool.
修改方式,自行百度

EF6连接MySql发布后报错的修改

报错信息:具有固定名称“MySql.Data.MySqlClient”的 ADO.NET 提供程序未在计算机或应用程

 

 

解决方法:

在webconfig中添加如下内容

<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" />
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>

 

*服务器端需先安装mysql-connector-net.msi。

 






以上是关于kettle作业连接mysql资源库8小时后报错的主要内容,如果未能解决你的问题,请参考以下文章

kettle-8.3.0.0连接MySQL报错

kettle无法连接远程资源库(mysql)

linux环境kettle连接不了数据库资源库

mysql升级到8后报错,only_full_group_by报错

Kettle连接MySQL报错的解决方法

EF6连接MySql发布后报错的修改