Linux下,部署完kettle之后,执行“./kitchen.sh”命令,已成功部署。
自动化执行文件如下图:
启动自动化调度后,报错,如下图:
Processing stopped because of an error:
Error connecting to the repository!
Error occurred while trying to connect to the database
Error connecting to database: (using class org.gjt.mm.mysql.Driver)
Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
ERROR: Kitchen can't continue because the job couldn't be loaded.
注:mysql的jdbc驱动(mysql-connector-java-5.1.15-bin.jar)已经放到了 data-integration\lib下但仍然报错(在网上说这么好用,但是没有效果,还有说放到/app/kettle/data-integration/libext/JDBC目录下的,因为没有此目录,新建后放入此jar包,还是不管用),望大神赐教
把那个org。gjt。mysql 包删除呢····
兄弟哪有git的?这种报错应该不是驱动的问题吧。应该是连不上你的资源库数据库。而且为什么你有使用资源库又添加了-file参数,把file参数也去掉试试
首先感谢楼上两位大神的回答,再说一下问题的错误原因:
1、是因为这部署kettle的这台服务器上没有MySQL的客户端,所以根本无法访问到数据库,太疏忽了。。。
2、接下来换了一台装有MySQL客户端的服务器,进行部署。也是有问题,是由于我创建的资源库用户没有权限访问那台数据库(只开通了外网连接权限,未开通localhost权限)
---赋予权限(外网)
grantallonlisnew.*toods_rep@"%"identifiedby'ods_rep';
---赋予权限(内网/本地)
grantallprivilegeson.toods_rep
@localhostidentifiedby'ods_rep';
【注】:ods_rep用户为资源库用户,命令含义可在百度查询
所以,总体来说,还是连接数据库的问题,希望有所帮助!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。