我设计了一个用于转换的ktr文件。我需要配置生产环境的数据库连接细节。我怎样才能做到这一点?有什么建议吗?
答案 0 :(得分:3)
我使用环境变量。
KETTLE_HOME
KETTLE_JNDI_ROOT
PATH=$PATH:$KETTLE_HOME
Kettle home只是目录的链接。默认情况下,我有专门用于数据集成套件的目录。它包含几个版本的水壶。
实施例
/opt/kettle/data-integration-4.4.0 (few old jobs made like several years ago)
/opt/kettle/data-integration-5.2.0 (currenly used)
/opt/kettle/data-integration-6.0.0 (on test)
然后有一个指向当前默认值的链接(类似于debian中的替代品)。它有助于在同一台机器上安装多个版本的水壶。
ln -s /opt/kettle/data-integration-5.2.0 /opt/kettle/data-integration
现在
/opt/kettle/data-integration
是主套件的链接,默认情况下将使用该链接。这是出于jdk compbility的原因。由于4.4.0是基于jdk6,5.2.0 jdk7(并且由于xstream xml库中存在错误而无法在jdk8上工作,但可能已经修复,6.0分支在jdk8上运行良好,即使它是基于jdk7构建的)
在/ etc / profile中配置的变量。 文件jdbc.properties位于
中$KETTLE_HOME/simple-jndi
并由所有工作共享。此文件具有连接设置,如果网络配置发生更改,则由puppet生成。如果管理员执行某些操作,则puppet会在迁移时自动生成新文件。
对于连接定义,我使用命名规则
main -connection to productive database
main_slave -connection to slave database (read-only)
test -connection to test database (on separate machine)
test_slave
依旧......