Kettle 连接MySQL连接失败 详细解决步骤(实测)

前言:先说一下我使用的环境和软件版本,不同的环境】版本即使相同的问题可能处理的解决方案也是不一样;网上教程太多,处理起来也很烦;

操作系统:windows10、MySQL:8.0.16  Kettle :8.2

问题描述:错误连接数据库

错误连接数据库 [本地mysql] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed.
org.gjt.mm.mysql.Driver


org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database

Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed.
org.gjt.mm.mysql.Driver

    

初步判断:驱动和需要的连接j jira包缺失;

处理方法:网上一顿骚操作;

        提供几个比较好的地址可以查询下载对接的jira包都是免费开源;

https://mvnrepository.com/artifact/mysql/mysql-connector-java

MySQL :: Download Connector/J

可以参考

下载完jira包之后 将下载的jira包放置到安装kettle的lib目录下;

 这是我本地安装的 :D:\soft\kettle\data-integration\lib

重启 spoon.bat

 可以查看jar 包里面  是否含有drive.class 驱动  ,一般正常都会有,网上说最新的没有;

 但我下载的 是有Drive.class 驱动的;也不去深究了,可能跟时间有关系

 好了 重启完了 我们看效果 

哈哈哈哈哈  我以为成功了 没想到报错还是跟原来一模一样  ;

思绪有点乱 别慌 ;

开始替换别的版本的jia包,然后重启、重启电脑、管理员运行、检查防火墙、数据库密码 一切都是正常 ;

先喝口水冷静冷静  ;

开始苦苦寻找解决方案,突然发现kettle中有jdbc的连接 赶紧情况不对;

 于是网上重新寻觅了一下jdbc中MySQL的配置

mysql_localhost/type=javax.sql.DataSource
mysql_local/driver=com.mysql.cj.jdbc.Driver
mysql_test/url=jdbc:mysql://ip:3306/db?useUnicode=true&characterEncoding=utf-8&disableMariaDbDriver
mysql_test/user=yourname
mysql_test/password=yourpassword

开启新的操作

重新打开配置,选择 JNDI 

下面就是见证激动人心的时刻了  

终于可以了  ;

提几个注意点:

1、优先选择连接J jia包进行连接 ,但是部分版本可能缺失由于8.0的jar包没有提供org.gjt.mm.mysql.Driver.class文件,所以添加驱动之后,还需要修改kettle的配置文件data-integration/simple-jndi/jdbc.properties;

2、连接配置jdbc时需要注意一下 字符集 可能会出现乱码;

3、细心一点问题总能解决

  • 7
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老街听雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值