kettle(pdi)使用变量连接MySQL

在kettle的连接数据库中,没有直接的提示可以使用变量,例如【变量替换】,从步骤中插入数据等,

开始以为kettle数据库连接只能每次都手动填写,每个转换都要新建一个数据库连接.

一、共享数据库连接,让转换直接使用建好的连接

1. 在spoon中,点击左侧的【主对象树】-》DB连接->鼠标右击已有的数据库连接->选择【共享】,就可以复用相同的数据库连接了

二、使用变量

1. 修改当前用户的[.kettle/.kettle.properties]文件,增加变量值

 该属性文件位于 ${user.home}.kettle 下

    mysql_ip = localhost

    mysql_db = test

    mysql_user = root

2. 在转换/job中设置变量

  右击空表处,->【转换设置】->【命名参数】,设置默认值

3.在Job中定义,并传递给转换

三、 数据库连接信息中直接使用 

  ${mysql_ip}这样的信息,会自动转换成变量的值

       源码解读看这里, 数据库密码如果需要加密,保存后来会以特定字符开头 "Encrypted ";

       如果密码是使用变量的方法,就不会加密,即%%变量%%和${变量}的方式填写,就不会加密。

 

posted @ 2020-08-18 15:11  千年寒冰火  阅读(882)  评论(0编辑  收藏  举报