在 Pentaho Kettle 中的步骤初始化之前测试数据库连接?

Posted

技术标签:

【中文标题】在 Pentaho Kettle 中的步骤初始化之前测试数据库连接?【英文标题】:Test database connection before step initialization in Pentaho Kettle? 【发布时间】:2015-10-05 12:50:57 【问题描述】:

我目前正在对 Pentaho Kettle 进行改造。我有很多步骤都取决于相同的数据库连接。用户名和密码由用户作为参数提供。如果提供了错误的凭据,依赖于数据库连接的每个步骤都无法初始化并记录一个单独的错误。这导致一堵可怕的红色文字长城,恐怕对于转换的预期最终用户来说很难解释。

那么,有没有办法在其他步骤初始化之前测试数据库凭据,然后在它们不正确时记录一条信息性错误消息?

【问题讨论】:

你不能定义一个包含两个转换的作业,首先获取数据库连接参数,测试连接,如果连接成功则继续前进? @DirkTrilsbeek 这是一个聪明的解决方法。宁愿以一种方式拥有一切,但如果不可能,您的建议肯定会完成工作。谢谢! 【参考方案1】:

您可以在 PDI 作业中尝试Check Db connections 步骤。在这里,您可以轻松地提供您在工作中使用的所有连接。最后根据连接设置,你可以定义你的逻辑流程。

希望对你有帮助:)

【讨论】:

有趣!不知道该步骤 - 将测试它的工作原理并报告!谢谢! 刚刚意识到该步骤仅在作业中可用,而不是在转换中。我宁愿不必将我的转型包装在一份工作中。但也许我必须这样做? @Anders 如果有多个转换并且您可能需要执行每个 ktr 文件,我更喜欢将所有 .ktr 文件包装到一个作业中。这是作业背后的主要思想,将 ktr 文件打包成一个文件并提供整体逻辑流程。无论如何处理文件变得更容易!但最终它取决于您的业务需求 只有一种转换,但有多个步骤会产生错误。感谢您的帮助。 您可以创建一个作业,首先检查数据库连接,然后执行转换!!。

以上是关于在 Pentaho Kettle 中的步骤初始化之前测试数据库连接?的主要内容,如果未能解决你的问题,请参考以下文章

Pentaho Kettle 中的“表存在”步骤

pentaho dpi-5.3(kettle)中的mongodb源代码在哪里?

在 Pentaho Kettle ETL 步骤中分发标签有啥作用?

Pentaho Kettle insert 步骤的错误处理

在 Pentaho Kettle 中设置初始存储库时出错

Pentaho - 如何根据 Kettle 属性文件设置工作转换