我使用./start-hbase.sh启动了HBase。我做了./hbase shell来启动Hbase的shell。问题是我无法创建新表。
$ ./hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.92.1, r1298924, Fri Mar 9 16:58:34 UTC 2012
hbase(main):001:0> create 'test','cf'
永远这样。有人可以帮忙吗?
由于
答案 0 :(得分:8)
你的HMaster没有开始。
1.亲自检查你的Hmaster日志。
如果你在日志中看到这样的东西。
INFO org.apache.hadoop.hbase.util.FSUtils: Waiting for dfs to exit safe mode...
然后使用以下命令从安全模式中离开hadoop
hadoop dfsadmin -safemode leave
2.如果你看到localhost不接受或者zookeeper不接受的话。
然后,请修改/ etc / hosts和/ etc / hostname文件。
删除第127.0.1.1行localhost
您的/ etc / hosts文件应如下所示
127.0.0.1 hadoop
192.165.1.45 hadoop hbase
您的/ etc / hostname文件应如下所示。
hadoop
答案 1 :(得分:2)
您必须检查Hmaster日志,检查hbase-site.xml文件中的 hbase.rootdir 和 hbase.zookeeper.quorum 参数。 当Hbase无法连接到Zookeeper仲裁时,通常会发生这种情况。
答案 2 :(得分:0)
此外,如果要用作与HBase的客户端连接,请编辑public interface ReadWriteListener {
void onEvent(BleDevice.ReadWriteEvent event);
}
,必须编写IP和主机名。
例如,HBase在192.168.xx.xx中运行,但是您的应用程序在192.168.xx.yy中运行
编辑/etc/hosts
添加以下行
/etc/hosts
答案 3 :(得分:0)
如果以下命令不起作用
$ hadoop dfsadmin -safemode leave
然后尝试
$ hdfs dfsadmin -safemode forceExit
这对我有用!