首页 > 解决方案 > 执行 ./bin/start-hbase.sh 时出现 Hbase 错误(Windows)

问题描述

我使用本教程https://www.youtube.com/watch?v=g7Qpnmi0Q-s安装了 Hadoop,它可以正常工作。我将它安装在 C:/hadoop 中。

我安装它只是因为我读到 hadoop 是执行的先决条件(没有单一模式),并且错误消息与一些 hadoop 配置有关。但这没有帮助。

我尝试使用本教程https://ics.upjs.sk/~novotnyr/blog/334/setting-up-hbase-on-windows安装 Hbase 。但是我在执行时遇到了这个错误./bin/start-hbase.sh

cygwin终端中的输出:

$ ./bin/start-hbase.sh
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further detail
s.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further detail
s.
: Name or service not knownstname laptop-l6543teb
running master, logging to /cygdrive/c/java/hbase-2.2.4-bin/hbase-2.2.4//logs/hbase-maiwa-master-LAPTOP-L6543TEB.out
: running regionserver, logging to /cygdrive/c/java/hbase-2.2.4-bin/hbase-2.2.4//logs/hbase-maiwa-regionserver-LAPTOP-L6543TEB.out

hbase-站点-xml

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>file:///C:/cygwin/root/tmp/hbase/data</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>C:\Java\hbase-2.2.4-bin\hbase-2.2.4\logs</value>
    </property>
    <property>
        <name>hbase.cluster.distributed</name>
        <value>false</value>
    </property>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://localhost:9000/hbase</value>
    </property>
</configuration>

环境变量:

在此处输入图像描述

路径变量: 在此处输入图像描述

标签: javawindowshadoophbase

解决方案


产生的错误输出start-hbase.sh具有三个不同的错误。

1.HADOOP_HOME变量问题

WARNING: DEFAULT_LIBEXEC_DIR ignored. It has been replaced by HADOOP_DEFAULT_LIBEXEC_DIR. WARNING: log4j.properties is not found. HADOOP_CONF_DIR may be incomplete. 
ERROR: Invalid HADOOP_COMMON_HOME

HADOOP_HOME通过指向 Hadoop 安装文件夹(而不是安装文件夹中的文件夹)来更新环境变量bin

根据你的设置,

HADOOP_HOME=C:\hadoop\

另外,设置配置文件的位置

HADOOP_CONF_DIR=C:\hadoop\etc\hadoop\

2.解释 Linux 风格路径或无效路径的问题

cygpath: can't convert empty path

hbase-env.sh(下)中,更新和C:\Java\hbase-2.2.4-bin\hbase-2.2.4\conf\的值HBASE_HOMEHBASE_CLASSPATH

根据您的安装,

export HBASE_HOME=/cygdrive/c/Java/hbase-2.2.4-bin/hbase-2.2.4/
export HBASE_CLASSPATH=/cygdrive/c/Java/hbase-2.2.4-bin/hbase-2.2.4/lib/

并在您的环境变量中,确保HBASE_HOME配置类似于HADOOP_HOME.

3.无法解析主机名

: Name or service not knownstname laptop-l6543teb

hosts使用正确的 IP - 主机名映射更新您的文件。


推荐阅读