我正在使用hadoop-2.6.0和kerberos安全性。我已经安装了带有kerberos安全性的hbase,可以创建表并扫描它。
我也可以运行sqoop job将数据从mysql导入hdfs,但是当尝试从mysql导入hbase时,sqoop job失败了。
sqoop命令
sqoop import --hbase-create-table --hbase-table newtable --column-family ck --hbase-row-key id --connect jdbc:mysql://localhost/sample --username root --password root --table newtable -m 1
例外
15/01/21 16:30:24 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=localhost:2181 sessionTimeout=90000 watcher=hconnection-0x734c0647, quorum=localhost:2181, baseZNode=/hbase
15/01/21 16:30:24 INFO zookeeper.ClientCnxn: Opening socket connection to server 127.0.0.1/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknownerror)
15/01/21 16:30:24 INFO zookeeper.ClientCnxn: Socket connection established to 127.0.0.1/127.0.0.1:2181, initiating session
15/01/21 16:30:24 INFO zookeeper.ClientCnxn: Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x14b0ac124600016, negotiated timeout = 40000
15/01/21 16:30:25 ERROR tool.ImportTool: Error during import: Can't get authentication token
1条答案
按热度按时间jv2fixgn1#
你能试一下吗
在连接字符串中添加端口号:jdbc:mysql://localhost:3306/sample
删除--表newtable。首先使用列族在hbase上创建所需的表。
按id拆分
最后提到一个特定的--fetch大小,因为mysql的sqoop客户机内部有一个错误,它试图设置默认的最小fetch大小,这将导致异常。
你能再试一次并告诉我们吗?