本文介绍使用kettle从postgresql数据库中抽取数据到excel中。
首先,启动kettle
如果kettle部署在windows系统,双击运行spoon.bat或者在命令行运行spoon.bat
如果kettle部署在linux系统,需要执行如下命令启动
chmod +x spoon.sh
nohup ./spoon.sh & 后台运行脚本
开发配置kettle脚本的UI界面

首先,点击"文件-新建-转换" 菜单创建一个转换

可以看到转换的主对象树和核心对象区域,然后我们添加一个DB连接
选择"主对象树",双击"转换"下的"DB连接"会弹出一个设置窗口
设置
- 连接名称
- 连接类型
- 连接方式
- 数据库配置(主机名称、数据库名称、端口号、用户名和密码)

然后测试下配置是否正确。需要配置数据库连接驱动,下载后放到解压目录下的lib文件夹下。

添加完JDBC驱动后,必须重启下kettle才能加载驱动。
1)Oracle jdbc驱动
2)postgresql驱动
注:在转换之前需要创建所需的表,原始表和转换的目标表。
点击"核心对象"标签页中的"输入",选择"表输入"拖到"转换区域"。
双击"表输入"图标弹出表输入对话框,填入步骤名称,选择数据库连接,点击"获取SQL查询语句",或者直接写入SQL语句,填写附件信息,点击"预览"按钮查看执行结果,没有错误,点击"确认"关闭对话框。

点击"核心对象"-"输出",选择"Excel输出",拖入到转换区,双击Excel输出图标,弹出对话框,选择文件名和其他附加参数,点击确认。

点击输入表的图标,同时按下Shift键,再点击输出文件,将两者连接起来。然后双击Excel数据进行配置。

最后一步执行kettle脚本,点击工具栏上的执行按钮即可。

点击"启动"开始转换,转换完成后,我们可以Excel输出目录中查看转换结果。

上面是一个简单的数据迁移脚本,从数据库导出数据到excel文件中。