打开Kettle,建立 转换 ,在DB连接中可以配置所有的数据库连接,以便在后续的过程中使用。连接创建并测试通过后可以在左侧DB连接下右键共享出来。因为在单个作业或者转换中新建的DB连接都是都是局域数据源,在其他转换和作业中是不能使用的,即使属于同一个作业下的不同转换,所以需要把他们共享,这样DB连接就会成为全局数据源,不用多次编辑。
注意:在数据库链接的过程中,可能会报某个数据库连接找不到的异常。那是因为你没有对应的数据库链接驱动,请下载对应驱动后,放入kettle的lib文件夹。
一、Kettle采用JDBC连接Oracle
如果是rac环境,而且仅仅是视图,如何连接?请参考一下的做法:
1.不要填写主机名;
2.数据库名:填写以下连接字符串;
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your ip )(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = your ip )(PORT = 1521))(LOAD_BALANCE = yes)(FAILOVER = ON)(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = ***)))
3.端口号:-1;
二、Kettle采用JDBC连接MySQL
三、使用JNDI方式连接
以上使用JDBC的方式的优点是随用随配,如果需要改变链接,修改此处配置可以立即生效。缺点是如果转换比较多了,一旦需要修改数据源,每个转换都要进行改动,十分麻烦。所以还是通过配置文件更为方便些。
JNDI连接方式的一个缺点是:如果连接配置文件修改了,需要重启spoon,才有效。那么原有的所有任务都要关闭再启动。
JNDI的配置文件在Kettle工具文件夹的根目录下里的simple-jndi里