Mysql Talend上的SqoopImport组件错误
我试图在Talend(v.6.0.1)中运行一个非常简单的作业,它基本上由一个Sqoop导入组成,用于将数据从MySql迁移到运行在Cloudera发行版(CDH5.4模式)上的Hive数据库。我在本地运行Talend,数据库在单独的机器上运行。我已经创建了Cloudera连接作为Talend元数据,它似乎工作正常。我已按照说明的步骤创建作业。Cloudera集群(也在运行Sqoop)和MySQL数据库之间有一个ssh隧道连接,因此在MySQL的连接路径中,我使用的是localhost 当我尝试运行作业时,会产生以下错误stacktrace:Mysql Talend上的SqoopImport组件错误,mysql,sqoop,talend,Mysql,Sqoop,Talend,我试图在Talend(v.6.0.1)中运行一个非常简单的作业,它基本上由一个Sqoop导入组成,用于将数据从MySql迁移到运行在Cloudera发行版(CDH5.4模式)上的Hive数据库。我在本地运行Talend,数据库在单独的机器上运行。我已经创建了Cloudera连接作为Talend元数据,它似乎工作正常。我已按照说明的步骤创建作业。Cloudera集群(也在运行Sqoop)和MySQL数据库之间有一个ssh隧道连接,因此在MySQL的连接路径中,我使用的是localhost 当我尝试
Exception in component tSqoopImport_1
java.lang.Exception: The Sqoop import job has failed. Please check the logs.
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tSqoopImport_1Process(recent_orders_migration.java:512)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tLibraryLoad_1Process(recent_orders_migration.java:365)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.runJobInTOS(recent_orders_migration.java:786)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.main(recent_orders_migration.java:643)
[ERROR]: org.apache.sqoop.manager.SqlManager - Error executing statement: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 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.
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 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.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1118)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2308)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2122)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:774)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:375)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:289)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:880)
at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)
at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:739)
at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:762)
at org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:270)
at org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:241)
at org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:227)
at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:295)
at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1833)
at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1645)
at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tSqoopImport_1Process(recent_orders_migration.java:508)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tLibraryLoad_1Process(recent_orders_migration.java:365)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.runJobInTOS(recent_orders_migration.java:786)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.main(recent_orders_migration.java:643)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at java.net.Socket.<init>(Socket.java:434)
at java.net.Socket.<init>(Socket.java:244)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
... 33 more
[ERROR]: org.apache.sqoop.tool.ImportTool - Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter
at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1651)
at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tSqoopImport_1Process(recent_orders_migration.java:508)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.tLibraryLoad_1Process(recent_orders_migration.java:365)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.runJobInTOS(recent_orders_migration.java:786)
at dw_migration.recent_orders_migration_0_1.recent_orders_migration.main(recent_orders_migration.java:643)
组件tSqoopImport_1中出现异常
java.lang.Exception:Sqoop导入作业失败。请检查日志。
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.tSqoopImport_1进程(recent_orders_migration.java:512)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.tLibraryLoad_1进程(recent_orders_migration.java:365)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.runjobtos(recent_orders_migration.java:786)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.main(recent_orders_migration.java:643)
[错误]:org.apache.sqoop.manager.SqlManager-错误执行语句:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障
成功发送到服务器的最后一个数据包是0毫秒前的。驱动程序尚未从服务器收到任何数据包。
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障
成功发送到服务器的最后一个数据包是0毫秒前的。驱动程序尚未从服务器收到任何数据包。
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:422)
位于com.mysql.jdbc.Util.HandleneInstance(Util.java:409)
位于com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1118)
在com.mysql.jdbc.MysqlIO上(MysqlIO.java:343)
位于com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2308)
位于com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2122)
位于com.mysql.jdbc.ConnectionImpl(ConnectionImpl.java:774)
位于com.mysql.jdbc.JDBC4Connection(JDBC4Connection.java:49)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:422)
位于com.mysql.jdbc.Util.HandleneInstance(Util.java:409)
位于com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:375)
位于com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:289)
位于java.sql.DriverManager.getConnection(DriverManager.java:664)
位于java.sql.DriverManager.getConnection(DriverManager.java:247)
位于org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:880)
位于org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)
位于org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:739)
位于org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:762)
位于org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:270)
位于org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:241)
位于org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:227)
位于org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:295)
位于org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1833)
位于org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1645)
位于org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96)
位于org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)
位于org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
位于org.apache.sqoop.sqoop.run(sqoop.java:143)
位于org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
位于org.apache.sqoop.sqoop.runSqoop(sqoop.java:179)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.tSqoopImport_1进程(recent_orders_migration.java:508)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.tLibraryLoad_1进程(recent_orders_migration.java:365)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.runjobtos(recent_orders_migration.java:786)
在dw_migration.recent_orders_migration_0_1.recent_orders_migration.main(recent_orders_migration.java:643)
原因:java.net.ConnectException:连接被拒绝
位于java.net.PlainSocketImpl.socketConnect(本机方法)
位于java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
位于java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
位于java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
位于java.net.socksocketimpl.connect(socksocketimpl.java:392)
位于java.net.Socket.connect(Socket.java:589)
位于java.net.Socket.connect(Socket.java:538)
位于java.net.Socket。(Socket.java:434)
位于java.net.Socket(Socket.java:244)
位于com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
在com.mysql.jdbc.MysqlIO上(MysqlIO.java:292)
... 33多
[错误]:org.apache.sqoop.tool.ImportTool-在运行导入作业时遇到IOException:java.io.IOException:没有要为ClassWriter生成的列
位于org.apache.sqoop.orm.ClassWriter.gen