无法连接到 Pentaho Kettle 中的 PostgreSQL 数据库
Posted
技术标签:
【中文标题】无法连接到 Pentaho Kettle 中的 PostgreSQL 数据库【英文标题】:Can`t connect to PostgreSQL database in Pentaho Kettle 【发布时间】:2019-11-14 13:58:57 【问题描述】:我正在尝试连接到我的 PostgreSQL 数据库。我创建一个连接并单击“测试”按钮,我收到一条错误消息。我可以通过 pgadmin 连接到这个数据库而没有任何问题,所以这不是连接或凭据问题
我正在使用 Pentaho 水壶 8.3,Windows,java 版本“1.8.0_231”
Error connecting to database [Name] :org.pentaho.di.core.exception.KettleDatabaseException:
Error occurred while trying to connect to the database
Error connecting to database: (using class org.postgresql.Driver)
Ошибка при попытке подсоединения.
完整的错误堆栈:https://pastebin.com/cLiB288e
【问题讨论】:
你能翻译来自驱动程序的错误信息吗?这很可能指向原因。 @Cyrus 这不是一条信息量很大的消息:“尝试连接时出错。” 第一行写着“...database [Name]”,这真的是数据库的名称还是您编辑了真实名称? 如果你确实在同一台机器上运行所有东西(即没有端口限制等)并且有兼容的 JDBC 驱动程序,我猜这个问题可能隐藏在你的 Kettle 配置中。可以分享一下吗?或者您也可以尝试在 Java 调试模式下启动 Spoon,并从您最喜欢的 Java IDE 中调试org.postgresql.core.v3.ConnectionFactoryImpl
周围的问题部分...
pgadmin 在哪里?同一主机PID水壶是? PGAdmin 是 Web 服务器,现在可能位于不同的网络中,仅开放 http 访问
【参考方案1】:
尝试在PDI的/lib文件夹下添加postgresql-42.1.1.jar,重启spoon再试一次。
【讨论】:
这表明驱动程序可用“连接数据库时出错:(使用类 org.postgresql.Driver)” 驱动 postgresql-42.2.8.jar 正在使用,我建议更换旧版本的驱动。【参考方案2】:几个月前我自己在连接到 PostgreSQL 时遇到了 2 个问题,以下 2 件事帮助了我
1.在PDI下'lib'文件夹中添加postgres-42.1.1jar文件并重启spoon。
-
如果正常的 JDBC 连接约定不适合您,请尝试以下提示
在配置连接时指定主机名,如下所示 HOST IP:HOST PORT/实例名称?
【讨论】:
以上是关于无法连接到 Pentaho Kettle 中的 PostgreSQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章
pentaho水壶无法连接到cloudera cdh4 HDFS
如何动态传递数据库连接属性以连接到 pentaho 中的不同数据库
Pentaho Kettle 无效的 JNDI 连接无法创建与数据库服务器的连接
无法使用 Pentaho PDI CE 连接到 MongoDb
无法通过 Pentaho 连接到 oracle。找不到“oracle.jdbc.driver.OracleDriver”