kettle经验篇:分享两个小白常见问题
目录
问题1:字符集问题
问题2:JDBC驱动问题
问题1:字符集问题
对于直接从官网下载的pentaho data integration,其编码格式并不是UTF-8。如果资源库中的转换或者作业存在中文,打开的时候就会弹出以下报错:
Unexpected error reading step information from the repository
Invalid byte 1 of 1-byte UTF-8 sequence.
这个问题不难解决,只是对于小白来说可能比较棘手,因为不知道从哪里修改其编码格式。对于pentaho data integration,它的编码格式是在Spoon.bat文件中修改(这里默认大家的kettle客户端部署在Windows);spoon文件在pentaho data integration的安装目录下,它也是pentaho data integration图形界面的启动程序。
找到spoon文件后,在下图位置增加 "-Dfile.encoding=UTF-8" 信息,这表示已经将pentaho data integration的资源库文件编码格式修改为UTF-8格式。此时重启pentaho data integration,再打开资源库中的转换或者作业的时候就不会再出现报错了。
问题2:JDBC驱动问题
直接从官网下载的pentaho data integration软件包中没有包含ojdbc6驱动。所以如果有涉及Oracle数据库的数据同步行为都会报错,报错行为如下图所示。
Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed.
oracle.jdbc.driver.OracleDriver
这个问题的解决方法就更简单了,只需要把ojdbc6.jar文件放到pentaho data integration安装目录的lib目录下就能解决。大家可以去我的百度网盘中获取ojdbc6.jar文件,链接提取码在下方。
通过网盘分享的文件:ojdbc6
链接: https://pan.baidu.com/s/1yK5A_y9KR2bpXkG9DJwmqQ提取码: zqd1
ojdbc6.jar文件放到lib目录下后,重启下pentaho data integration客户端程序,再测试Oracle数据库连接就不会再发生报错了。