热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

kettle8.3连接mysql8.0.30的入坑体验

写这个东西主要是想吐槽为主,真的无语了。kettle是java写的java版权是oracle的。mysql是Oracle的。   吐槽:一般来说,在kettle中新建m

  写这个东西主要是想吐槽为主,真的无语了。

  kettle是java写的 java 版权是 oracle 的。 mysql 是 Oracle 的。

     吐槽:

  一般来说,在kettle中新建mysql连接时,都选择Native(JDBC)方法,这种方法虽然快捷,但是不能指定驱动类型。

  kettle 默认的mysql驱动org.gjt.mm.mysql.Driver。而mysql 8.0以上connector已经不再支持这个包名。也就是说没有org.gjt.mm.mysql下的路径了。

   所以在选择JDBC 方法来作mysql 连接的时候就会出现 报错 连接错误 org.gjt.mm.mysql.Driver 没找到

        

 

 

       那么怎么办呢?

       首先我们要确认我们 kettle/lib 下要有 驱动包mysql-connector-java-XXX XXX代表版本号

  没有的话可以去下载一个 :

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

  这个时候你要是下载对应版本的你就会发现没有org.gjt.mm.mysql

 

 

  因为mysql 8之后的版本都是com.mysql.cj.jdbc.Driver 这个了

 

 

 

  下边这个是 5.1.46版本的也就是有org路径的演示

 

 

   到这里一些东西就很清楚了。

  所以解决方法如下:

  方法一(我就是头铁):

  头铁的我就是用 Oracle那套,那没问题。 你在kettle/lib 下用 有org.gjt.mm.mysql 驱动的不就行了嘛,所以我 将MySQL  5.1.46的驱动 下载到 kettle/lib 下。将之前的连接配置删除 具体应该是 c盘的user 下有个 .kettle 的配置文件按照自己的来哈

 

  重启启动spoon.bat 选择MySQL JDBC .

 

 

 

 

  没错它成功了。

  没错它是没问题了,但是我们是mysql 8哎,强迫症的我就又开始了新的操作。

  方法二(我暂时屈服了):

  我在网站上下载了对应版本的 mysql-connector-java-8.0.30 ,那问题出现了,如果我选JDBC 肯定不行了,它默认是 org.gjt.mm.mysql,这个8.0的jar包没有啊!!!

  所以我们选择另外一种连接方式 JNDI

  这种方式呢我们在界面上只要配置名字就可以了,实际的操作其实需要手动配置的

  找到kettle 安装位置的:Kettle\simple-jndi\下边有个 jdbc.properties 配置文件

 

  我们打开它,将 MySQL的配置加上,其中 红框的位置注意下

 

 

 
 

#mysql的的配置
MYSQL8_DB
/type=javax.sql.DataSource
MYSQL8_DB
/driver=com.mysql.cj.jdbc.Driver
MYSQL8_DB
/url=jdbc:mysql://localhost:3306/kettle?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezOne=GMT
MYSQL8_DB/user=kettle
MYSQL8_DB
/password=kettle

  根据自己的数据库配置来哈

  界面就简单了,只要注意下名字跟 jdbc 中的那个名字一致就可以了。

 

 

  这样就成功了。

  方法三:

  这个方法怎么说呢,感觉有点多余。除非你有特殊需求。如果你是第一次创建连接还是用 方法二,再不济用方法一,因为这个方法没法在MySQL的源数据库中创建kettle的元数据表,就是R_ 等等表

  这个就是用通用数据库  Generic database 

  注意是自己的库

      自定义连接URL :

  jdbc:mysql://localhost:3306/kettle?useUnicode=true&characterEncoding=UTF-    8&useSSL=false&serverTimezOne=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL

  自定义驱动类:

     (MySQL8 跟MySQL 5 版本不同 驱动类 不同,下面这个适用于MySQL 8 )

   com.mysql.cj.jdbc.Driver

 

  如果你是第一次的话,你用SpoonConsole.bat 运行的时候就会发现 提示你

  :此数据库类型不支持作为存储库

 

 

   怎么说呢感觉有了方法二之后这个就有点鸡肋了,但也写出来吧。

  好了这三种方法都是实测有效的。

  如果你要换别的,比如 MySQL 换oracle 之类的。记得把 c盘的user 下有个 .kettle 的配置文件  删除 。一般是 C:user 或者是 C:用户 再往下找 ,因为我是宏碁笔记本,所以我是 acer ,有的到这里就可以找到了。我呢是还要点开 acer 找到 .kettle 

 



推荐阅读
  • 微信商户扫码支付 java开发 [从零开发]
    这个教程可以用作了解扫码支付的整体运行过程,已经实现了前端扫码,记录订单,回调等一套完整的微信扫码支付。相关链接:微信支 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 随着我司的应用都开始容器化,相应的ETL流程也需要迁移到容器中。常规的SQL和shell脚本迁移之后执行基本没有问题,主要的问题在于数据接入使用kettle的场景下,kettle启 ... [详细]
  • 初识java关于JDK、JRE、JVM 了解一下 ... [详细]
  • 1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了解决java开源项目apache commons email简单使用报错的方法,包括使用正确的JAR包和正确的代码配置,以及相关参数的设置。详细介绍了如何使用apache commons email发送邮件。 ... [详细]
  • android ... [详细]
  • 开发笔记:MyBatis学习之逆向工程
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了MyBatis学习之逆向工程相关的知识,希望对你有一定的参考价值。转载:http://w ... [详细]
  • OAuth2.0指南
    引言OAuth2.0是一种应用之间彼此访问数据的开源授权协议。比如,一个游戏应用可以访问Facebook的用户数据,或者一个基于地理的应用可以访问Foursquare的用户数据等。 ... [详细]
author-avatar
正好忍心_702
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有