我一直在尝试使用Sqoop将一个表从Vectorwise导入到Hive。我下载了Vectorwise JDBC驱动程序和所有内容。它就是不起作用。
这是我正在使用的命令: sudo -u hdfs --driver com.ingres.jdbc.IngresDriver --connect jdbc: ingres ://172.16.63.157:VW7/amit --username ingres -password ingres--表vector_table --hive-table=向量表--hive- -m --create-hive-table -m 1
我收到错误: 12/06/07 22:08:27错误sqoop.Sqoop:运行Sqoop时出现异常: java.lang.RuntimeException:无法加载数据库驱动程序类: com.ingres.jdbc.IngresDriver java.lang.RuntimeException:无法加载数据库驱动程序类: com.ingres.jdbc.IngresDriver at com.cloudera.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:53) at com.ingres.jdbc.IngresDriver at com.cloudera.sqoop.managercom.cloudera.sqoop.manager.SqlManager.execute(SqlManager.java:547) at com.cloudera.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:191) at com.cloudera.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:175) at com.cloudera.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:263) at com.cloudera.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1226) at com .SqlManager.execute(SqlManager.java:524).cloudera.sqoop.orm.ClassWriter.generate(ClassWriter.java:1051) at com.cloudera.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:84) at com.cloudera.sqoop.tool.ImportTool.importTable(ImportTool.java:370) at com.cloudera.sqoop.tool.ImportTool.run(ImportTool.java:456) at com.cloudera.sqoop.Sqoop.run(Sqoop.java:146) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)在com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:182) at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:221) at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:230) at com.cloudera.sqoop.Sqoop.main(Sqoop.java:239)
如果有人能帮我的话我会很感激的。
提前感谢!:)
发布于 2012-06-08 14:37:38
好的,我把它弄好了。这只是一个简单的权限问题。我将iijdbc.jar的所有者改为hdfs。
sudo chown hdfs /usr/lib/sqoop/lib/iijdbc.jar
现在它可以工作了!:)
我现在可以使用Sqoop将我的向量表导入到Hive中。太棒了!
发布于 2012-06-07 20:18:25
我还不能评论,所以作为回答:
这是documentation的一句话。
您可以将Sqoop与任何其他
兼容的数据库一起使用。首先,为您想要导入的数据库类型下载适当的JDBC驱动程序,并在客户机上的$SQOOP_HOME/lib目录中安装.jar文件。(如果是从RPM或Debian包安装的,则为/usr/lib/sqoop/lib。)每个驱动程序.jar文件还具有特定的驱动程序类,该类定义了驱动程序的入口点。例如,MySQL的连接器/J库有一个com.mysql.jdbc.Driver驱动程序类。请参阅特定于数据库供应商的文档以确定主驱动程序类。这个类必须作为参数提供给带有--driver的Sqoop。
在Sqoop可访问的目录中是否有正确的jar文件?
对于将来来说,如果你提供一些关于你的环境的更多信息,比如你正在使用哪个版本的Sqoop等,它也总是有用的。
https://stackoverflow.com/questions/10930795
复制相似问题