在kettle中的转换或者做业等资源的存储的仓库称为资源库:分为文件资源库、数据库资源库。html
一个转换或者做业能够属于某个资源库或者一个单独的文件形态存在。mysql
1、数据库资源库web
1.1在mysql中建立一个数据库做为数据库资源库sql

1.2建立数据库资源库工具--》资源库--》链接资源库--》点击加号--》选择建立数据库资源库数据库
由于咱们要使用mysql做为资源库,因此kettle须要链接到mysql,也就是说须要mysql的驱动包,咱们要把驱动包拷贝到kettle的lib目录下。安全

建立数据库链接而且经过测试服务器

选择建立或更新网络
1.3建立完成后,验证数据库中是否建立了不少的表oracle

看到这些表,就表示建立完成了一个数据库资源库了。编辑器
1.4建立一个转换,而且建立一个DB链接,验证这个不共享的DB链接能不能在资源库中共享
通过测试是能够的。
2、文件资源库
工具--》资源库--》断开资源库
使用上面的步骤来退出数据库资源库
2.1建立文件资源库
和上面建立数据库资源库的方式同样,可是选择的是建立文件资源库。

2.2在文件资源库下,建立一个DB链接,验证是否能在文件资源库内共享
答案是能够的
3、需求:将mysql中的表导出成txt文件
在ldp_huyu数据库中有以下的一张person表

3.1创建以下图的转换

其中表输入的配置:

其中文本文件输出的配置:

3.2运行这个转换
最后生成文件

4、数据库资源库和文件资源库的比较
使用数据库来管理,更容易跨平台和共享,可是在版本控制方面不如文件资源库好,而且数据库须要走网络,网络链接的异常也会致使job失败
使用文件资源库比较麻烦的是跨平台,通常和svn等版本控制的工具结合使用。
=======================================================================================
点击新建图标

选择数据库类型资源库Kettledatabase repository,点击“肯定”
在“Database Connection”窗口,选择数据库类型,并填写数据库链接的相关信息,本实例选用oracle数据库。
点击test按钮进行数据库链接测试

数据库链接正确后,点击“肯定”,再点击“OK”,回到“资源库信息窗口”,点击“建立或更新”按钮

在弹出的“简单SQL编辑器”窗口中,点击“执行”按钮,执行相应的资源库建立脚本。(用户能够查看这些脚本具体是进行了什么操做:建立了46张表,并插入了一些相关信息数据,如R_USER表里插入了admin和guest两个用户的信息,这两个用户也是该资源库的登陆用户,想深刻研究资源库的用户能够并一步去了解相关内容)


在“资源库信息”窗口,填写资源库的ID和名称,而后点击“肯定”按钮。
舒适提示:建议使用英名,由于使用中文容易出现乱码,而使得退出后,下次登陆资源库时没法找到相应的配置,遇到此类状况,可根据下一章节“资源库名称乱码问题解决方法”进行相关修改设置。
在“资源库链接RepositoryConnection”窗口,选择刚才建立的资源库“备付金系统”,填写用户名和密码,新建的资源库的默认用户和密码有两个,admin/admin和guest/guest,而后点击“肯定OK”按钮,便可登陆资源库。
为了资源库的安全,咱们须要修改资源库用户的登陆密码,“Tools” -->“资源库”-->“探索资源库”,可使用快捷键CTRL + E。
在资源库探索“Repository explorer”窗口,选择“Security”选项卡,而后选择须要修改的用户再点击编辑按钮
填写新密码,而后点击“OK”按钮便可完成用户密码的修改
=======================================================================================
kettle常见的资源库有3种:数据库资源库、文件资源库、pentaho资源库。
文件资源库是在一个文件目录下定义一个资源库,由于kettle使用的是虚拟文件系统(Apache VFS),因此这里的文件目录是一个普遍的概念,包括了zip文件、web服务、FTP服务。
pentaho资源库是一个插件(kettle企业版中有),实际是一个内容管理系统(CMS),它具有一个理想的资源库的全部特性,包括版本控制和依赖完整性检查。
数据库资源库是把全部的ETL信息保存在关系型数据库中,包括数据库链接、转换和做业。将已开发的ETL转换、做业和相关配置保存在数据库资源库中便于保存、管理以及远程调度。本篇文章主要介绍数据库资源库建立方法:
一、进入spoon,工具--资源库--链接资源库,点击加号+新建资源库

二、选择数据库资源库,点击肯定

三、数据库链接选择新建,配置数据库链接信息,建议新建一个空白数据库


四、配置好数据库链接,选择建立或更新,继续选择是



五、选择执行SQL语句

六、提示执行SQL错误,选择肯定,稍后在处理这个错误,对上述sql执行提示的全部错误所有选择肯定

七、如今链接刚刚建立的资源库会报错,以下
八、下面进入sql server客户端(由于这里使用的是sql server数据库资源库,根据使用的资源库做调整),链接刚刚建立的资源库,执行下面的SQL语句
DELETE TABLE R_VERSION;
CREATE TABLE R_VERSION
(
ID_VERSION INTEGER,
MAJOR_VERSION INTEGER,
MINOR_VERSION INTEGER,
UPGRADE_DATE DATETIME,
IS_UPGRADE CHARACTER (1)
);
INSERT INTO R_VERSION (ID_VERSION, MAJOR_VERSION, MINOR_VERSION, UPGRADE_DATE, IS_UPGRADE)
VALUES (1, 5, 0, '2017-09-13', 'N');
不一样数据库的sql 语句写法可能不一样,目标是让上面标红的sql语句成功执行
如今链接刚刚建立的数据库资源库会发现用户名密码错误,执行下面的sql语句,建立一个新的用户,此时的用户名密码都是admin
INSERT INTO R_USER (ID_USER, LOGIN, PASSWORD, NAME, DESCRIPTION, ENABLED)
VALUES (1, 'admin', '2be98afc86aa7f2e4cb79ce71da9fa6d4', 'Administrator', 'User manager', '1')
如今从新链接刚刚建立的资源库,用户名密码都是admin,链接成功!
=======================================================================================
2.1 资源库的介绍:
资源库是用来保存转换任务的,用户经过图形界面建立的的转换任务能够保存在资源库中。
资源库可使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户能够自定义文件夹名称。
资源库有两种形式:
1、Kettledatabase repository,即保存在各类常见的数据库资源库类型,用户经过用户名/密码来访问资源库中的资源,默认的用户名/密码是admin/admin和guest/guest。
2、Kettle filerepository,保存在服务器硬盘文件夹内的资源库类型,此类型的资源库无需用户进行登陆,直接进行操做。
(固然,资源库并非必须的,若是没有资源库,用户还能够把转换任务保存在xml文件中。为了方便管理,建议用户创建并使用数据库类型资源库Kettle database repository。)
2.2 建立资源库:
运行spoon以后:
选择 Tools---->资源库----->链接资源库:

在弹出的窗口中,选择加号
进行新建,以下图:(此处因为以前有一个资源库,所以会提示输入用户密码)

在 “Select the repository type” 窗口中,选择第一个 “Kettle database repository :...” ,点击“肯定”:

在资源库信息中,选择“新建”来新建数据库链接:

填写数据库信息:(此处使用oracle数据库,jdbc链接方式)

点击“Test”测试链接:

点击“肯定”,关闭测试窗口,点击“OK”,完成数据库信息填写,回到资源库信息界面,选择“testdb1”,并填写 ID和名称:

点击“建立或更新”,弹出提示以下:

点击“是”,会弹出设置管理员密码的窗口:

输入,此处使用password,肯定,弹出提示窗口以下:

点击“是”,会生成新窗口,内容是SQL脚本:

因为已经创建过一个资源库,所以此处的脚本与第一次的不太同样。
点击“Execute”执行脚本,弹出SQL运行结果的窗口:

点击“肯定”,关闭此窗口,而后点击“关闭”,关闭SQL提示的窗口:

关闭SQL窗口以后,回到资源库信息的界面:

点击“肯定”,关闭资源库信息窗口,此时就到了链接资源库的界面:

选择要链接的资源库“测试资源库”,输入管理员用户admin,密码password(刚刚设置的密码),点击“OK”进行链接。
此时能够看一下左上角的信息:

说明咱们此时链接了资源库“testdb1”。
能够与最开始时没有链接资源库时的状态对比:

建立资源库就完美完成了。是否是很简单~~~~~
以后每次打开Spoon都会提示链接资源库,链接资源库以后,咱们作的全部开发包括转换、job等都保存在资源库中。
若是没有链接资源库,咱们作的转换、job等开发能够保存为本地文件。
=======================================================================================