0

我是 Sqoop 的新手。我正在尝试将数据从 MySQL 导入 hbase。这就是为什么必须为 MySQL 使用数据库连接器的原因。我的连接器文件的路径/usr/lib/sqoop2/lib/mysql-connector-java-5.1.6.jar在服务器上。数据库名称是:testhadoop我使用的表是employee我输入的命令

root@server:~# sqoop import --connect jdbc:mysql//localhost/testhadoop --driver com.mysql.jdbc.Driver --username root --table mytable

按 Enter 键后,我必须输入 root 密码。然后出现一个很长很长的错误消息

13/09/12 17:39:16 WARN sqoop.ConnFactory: Parameter --driver is set to an
 explicit driver however appropriate connection manager is not being set 
(via --connection-manager). Sqoop is going to fall back to org.apache.sqoop.manager.GenericJdbcManager. Please specify explicitly which connection manager should be used next time.
        13/09/12 17:39:16 INFO manager.SqlManager: Using default fetchSize of 1000
        13/09/12 17:39:16 INFO tool.CodeGenTool: Beginning code generation
        13/09/12 17:39:16 ERROR manager.SqlManager: 
        Error executing statement: java.sql.SQLException: 
        No suitable driver found for jdbc:mysql//localhost/testhadoop

请告诉我如何摆脱这个问题。

4

1 回答 1

0

根据命令行,您似乎使用的是 Sqoop 1.x,而 JDBC 驱动程序位于 Sqoop2 的路径中。我建议将 jar 文件 mysql-connector-java-5.1.6.jar 复制到 /usr/lib/sqoop/lib,以便它可用于 Sqoop 1。

另外我强烈建议删除参数 --driver 因为它会强制 Sqoop 使用通用 JDBC 连接器而不是专用的 MySQL 连接器。

于 2013-09-12T15:45:53.227 回答