使用 JNDI 的好处就是便于部署和数据源的变更,kettle 也提供了 JNDI 方式连接。
本文以 tomcat 和 mysql 为例,说明 kettle 如何使用 JNDI 方式连接数据源
1. 先将你的应用部署到 webapps 下,如 webapps/example。
2. 在 ./webapps/example/WEB-INF/lib 目录下,确保要有 kettle-core.jar,
kettle-engine.jar 和其他 kettle 运行时依赖的 jar 文件。
3. 将 mysql 的 jdbc 驱动拷贝到tomcat 的 ./lib 目录下,同时在 ./conf/server.xml
文件中配置 JNDI:
debug="5" reloadable="true"
crossContext="true">
type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="1"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test?autoReconnect=true"/>
4. 使用 kettle 的图形界面 spoon 创建一个转换,在创建数据库连接时,要使用 JND