运行bin/sqoop import --connect jdbc:mysql://ip:port/database --username *** --password ****--hbase-bulkload --hbase-create-table --column-family info --hbase-row-key username --hbase-table detects --table detects将Mysql中detects表导入到Hbase中的detects表,提示找不到users Class错误
解决方法: 将/tmp/sqoop-hadoop/compile 文件夹下的 detects.jar包 放到sqoop安装目录lib下。重新执行即可。确实重新运行好了.
2.使用importtsv将文件数据导入到Hbase中,x运行${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar,提示:
解决方法: 错误提示说明hadoop中找不到hbase的jar包,只要将hbase的路径添加到hadoop路径就可以了HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase classpath` ${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar;
最后可以使用命令将文件数据导入到hbase中,例子:HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase classpath` ${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar importtsv -Dimporttsv.columns=HBASE_ROW_KEY,info:name,info:age -Dimporttsv.separator=, user /hbase_user -Dimporttsv.bulk.output=/hbase_user 将use数据导入到hbase的user中,提示Bad lines =0 就说明全部导入成功啦
ps: 下图这个错误提示可以不用管他,不影响运行