转载文章版权声明:本文转载,原作者薄海 ,原文网址链接 http://blog.csdn.net/bohai0409/article/details/38072465,联系方式邮箱bohai7000@126.com。QQ-1511777。

问题1是     执行./spoon.sh报错

问题2是     测试数据库连接性报错

问题3是    在使用kettle导入数据过程中报错

问题1-1

执行./spoon.sh报如下错误

xlib:connection to "0.0"refused by server

xlib:No protocol specified

org.eclipse.swt.SWTError:Nomore handles [gtk_init_check() failed]

解决方案

[telepow@bodaodao data-integration]$exit

logout

[root@bodaodao kettle]#xhost+

access controldisabled,clients can connect from any host

[root@]su - telepow

[telepow@bodaodao]cd/opt/kettle/data-integration/

[telepow@bodaodao]./spoon.sh

问题1-2

执行./spoon.sh报如下错误

“A fatal error has beendetected by the JavaRuntime Environment”

原因分析:

这应该时GNOME或者X的库和Spoon集成的浏览器不能一起工作导致的。所以需要编辑(或创建)~/.kettle/.spoonrc,并在里面输入以下内容:

ShowWelcomePageOnStartup=N

具体操作:

[telepow@mic1 ~]$ cd .kettle/

[telepow@mic1 .kettle]$ pwd

/home/telepow/.kettle

[telepow@mic1 .kettle]$ touch.spoonrc

[telepow@mic1 .kettle]$ vi.spoonrc

ShowWelcomePageOnStartup=N

参考文档http://www.linuxidc.com/Linux/2012-10/72455.htm

问题2-1

创建PostgreSQL数据库连接,测试数据库连接报如下错误

Connect refused,Check thatthe hostname and port are correct and that the postmaster is accepint TCP/IP

[root@pgsql data]# pwd

/usr/local/postgresql/data

[root@pgsql data]# vipostgresql.conf

listen_addresses = '*'

port = 5432

[root@pgsql data]# servicepostgresql stop

Stopping PostgreSQL: ok

[root@pgsql data]# servicepostgresql start

Starting PostgreSQL: ok

问题2-2

创建PostgreSQL数据库连接,测试数据库连接报如下错误

Errot connecting to database(using class org.postgresql.Driver)

FATAL:no pg_hba.conf entryfor host "192.168.56.102" ,user "root" ,database "test_db"

[root@pgsql data]# cppg_hba.conf pg_hba.conf.bak

[root@pgsql data]# vipg_hba.conf

# IPv4 local connections:

host    all             all             127.0.0.1/32            trust

host    all             all            192.168.56.102/32       trust

/*192.168.56.102为kettle所在服务器,允许该服务器连接

[root@pgsql data]# servicepostgresql stop

Stopping PostgreSQL: ok

[root@pgsql data]# servicepostgresql start

Starting PostgreSQL: ok

问题2-3

创建Oracle数据库连接,测试数据库连接报如下错误

exceptionwhile loading class

oracle.rdb.jdbc.rdbThin.Driver

检查驱动,首先发现 Kettle 默认不带 Oracle 驱动。于是我把 Oracle 的 JDBC 驱动 ojdbc5.jar/ojdbc6.jar 放到了 Kettle 的目录data-integration\libext\JDBC 下

具体操作

# mv ojdbc6.jar/opt/kettle/data-integration/libext/JDBC/

重启机器 OK

连接oracle,可以先创建数据库连接,在选择数据库连接,数据库名数据库名是“SID_NAME,而不是 PL/SQL 的 “SERVICE_NAME

问题2-4

创建MySQL数据库连接,测试数据库连接,报如下错误

Exception while loading class

org.gjt.mm.mysql.Driver

org.pentaho.di.core.exception.KettleDatabaseException

解决

把mysql.jar(网上下的)放在/data-xxx/libext/JDBC/在目录下并重启机器

问题2-5

创建Mysql数据库连接,测试数据库连接,报如下错误

Error connecting to database

message from server host192.168.56.102 is not allowed to this mysql server

解决

如果你想允许用户myuser从ip为192.168.56.102的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.*TO 'root'@'192.168.56.102' IDENTIFIED BY '123456' WITH GRANT OPTION;

参考http://www.blogjava.net/acooly/archive/2008/09/17/229368.html

问题2-6

创建Mysql数据库连接,测试数据库连接,报如下错误

Access denied for userdfa@192.168.56.102(using password:YES)

用户名错误,修正用户dfa为正确用户root(本例用户为root)即可。

问题3-1

在使用kettle导入数据过程中报错
“ERROR INSERTING /UPDATING ROW”INCORRECT STRING VALUE “\xF1\xBC\xBD\xA8' for culumn keywords at row1,
1,将keywords字段的字符集改为utf8mb4
2,在Kettle的数据库连接高级设置中,设置当前会话字符集为utf8mb4 
具体操作
1,ALTER TABLE dt_se CHANGE keywords keywords  VARCHAR(550) CHARACTER SET utf8mb4;
2,Edit数据库连接--->Advanced----->set names utf8mb4; 设置当前会话字符集为utf8mb4

参考文档:http://vase.iteye.com/blog/2006972

问题3-2

在使用kettle导入数据过程中报错(连的好好的,突然在插入数据不能使用了)

Error looking up row in database

communications link failure

causedby:com.mysql.jdbc.exceptions,jdbc4.communicationsException:communications linkfailure

Last packet sent to the server was 0 msago.

原因分析:mysql 连接时间问题,应用程序和MySQL数据库建立连接,如果超过8小时应用程序不去访问数据库,数据库就断掉连接,缺省mysql的timeout时间是28800秒,也就是8小时。

解决方法:我们改成8000小时

cd /usr/local/mysql

vi my.cnf

[mysqld]

interactive_timeout=28800000

wait_timeout=28800000

不需要重启mysql服务

参考文档:http://hi.baidu.com/onezero520/item/fa82b6dd03409715e1f46f08

【转】使用kettle工具遇到的问题汇总及解决方案的更多相关文章

  1. Android开发之《常用工具及文档汇总》

    GreenVPN:https://www.getgreenjsq.com/ Android开发工具.资料下载汇总:http://androiddevtools.cn/#img-size-handle- ...

  2. kettle工具二次开发-代码启动JOB

    kettle工具是一款优秀的数据同步.数据处理的BI工具,收到了很多人的青睐.kettle软件通过可视化的图标可以让我们很轻易的能完成数据同步.处理的开发工作.但是使用kettle可视化界面在跑JOB ...

  3. kettle工具实现报表导出的初步搭建

    1.下载kettle 国外网站:http://kettle.pentaho.org/需要FQ,下载慢 2.下载完成启动(windows)-->spoon.bat 3.进入界面,两个主要的tab页 ...

  4. kettle工具的设计模块

    大家都知道,每个ETL工具都用不同的名字来区分不同的组成部分.kettle也不例外. 比如,在 Kettle的四大不同环境工具 本博客,是立足于kettle工具的设计模块的概念介绍. 1.转换 转换( ...

  5. kettle工具的设计原则

    不多说,直接上干货! Kettle工具在设计初,就考虑到了一些设计原则.这些原则里借鉴了以前使用过的其他一些ETL工具积累下的经验和教训. 易于开发:作为数据仓库和ETL开发者,你只想把时间用在创建B ...

  6. ETH&EOS开发资源及工具集合(完整汇总版)

    ETH&EOS开发资源及工具集合(完整汇总版) 3113 ETH开发资源篇 一.开发语言 ·         Solidity - 官方推荐以太坊智能合约开发语言,也是目前最为主流的智能合约语 ...

  7. 【实战】使用 Kettle 工具将 mysql 数据增量导入到 MongoDB 中

    最近有一个将 mysql 数据导入到 MongoDB 中的需求,打算使用 Kettle 工具实现.本文章记录了数据导入从0到1的过程,最终实现了每秒钟快速导入约 1200 条数据.一起来看吧~ 一.K ...

  8. H5项目常见问题汇总及解决方案

    H5项目常见问题汇总及解决方案 H5   2015-12-06 10:15:33 发布 您的评价:       4.5   收藏     4收藏 H5项目常见问题及注意事项 Meta基础知识: H5页 ...

  9. flume常见异常汇总以及解决方案

    flume常见异常汇总以及解决方案 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 实际生产环境中,我用flume将kafka的数据定期的往hdfs集群中上传数据,也遇到过一系列的坑 ...

随机推荐

  1. JS执行机制--事件循环--笔记

    JS的解析是由浏览器中的JS解析引擎完成的.JS是单线程运行,也就是说,在同一个时间内只能做一件事,所有的任务都需要排队,前一个任务结束,后一个任务才能开始.但是又存在某些任务比较耗时,如IO读写等, ...

  2. spring boot热启动

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

  3. 编译Thrift支持golang

    本文已经是很久以前的文章了,也不知道新版本thrift如何 Thrift是一个跨语言的服务部署框架,Thrift通过一个中间语言(IDL, 接口定义语言)来定义RPC的接口和数据类型,然后通过一个编译 ...

  4. js 关于本地文件的处理

    https://developer.mozilla.org/zh-CN/docs/Web/API/File/Using_files_from_web_applications

  5. putty 、xshell的使用 和 putty 、xshell、 shell 间免密登陆

    相关软件的使用: ######################################################################### 以上是相关软件的使用! 以下是免密 ...

  6. C# 8.0、.NET Framework 4.8与NET Standard 2.1的一个说明

    C# 8.0..NET Framework 4.8与NET Standard 2.1的一个说明 https://blog.csdn.net/sD7O95O/article/details/846098 ...

  7. C++学习(六)(C语言部分)之 输出

    输出学习时的笔记(其实也没什么用,留着给自己看的) printf 用于输出内容 控制台黑窗口printf("要输出的内容"); //可以是任意内容-->如果要输出变量 1.格 ...

  8. hibernate中带查询条件的分页

    所谓分页,从数据库中分,则是封装一个分页类.利用分页对象进行分页. 但,分页往往带查询条件. 分页类的三个重要数据:[当前页码数],[数据库中的总记录数],[每页显示的数据的条数] 原理:select ...

  9. LG3975 [TJOI2015]弦论

    题意 题目描述 为了提高智商,ZJY开始学习弦论.这一天,她在< String theory>中看到了这样一道问题:对于一个给定的长度为n的字符串,求出它的第k小子串是什么.你能帮帮她吗? ...

  10. MongoDB高可用集群搭建(主从、分片、路由、安全验证)

    目录 一.环境准备 1.部署图 2.模块介绍 3.服务器准备 二.环境变量 1.准备三台集群 2.安装解压 3.配置环境变量 三.集群搭建 1.新建配置目录 2.修改配置文件 3.分发其他节点 4.批 ...