我是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
点击回车键后,我必须输入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
请告诉我如何摆脱这个问题。
根据命令行,您似乎使用的是 Sqoop 1.x,而 JDBC 驱动程序位于 Sqoop2 的路径中。我建议将jar文件mysql-connector-java-5.1.6.jar复制到/usr/lib/sqoop/lib,以便它可用于Sqoop 1。
此外,我强烈建议删除参数--driver,因为它将强制Sqoop使用通用JDBC连接器而不是专用的MySQL连接器。