我是HIVE中的新成員。 我已經建立了hadoop,它運行良好,我想設置Hive。 當我開始蜂房,它顯示了一個錯誤java.net.URISyntaxException啓動HIVE時
Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
有什麼辦法呢?
我是HIVE中的新成員。 我已經建立了hadoop,它運行良好,我想設置Hive。 當我開始蜂房,它顯示了一個錯誤java.net.URISyntaxException啓動HIVE時
Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
有什麼辦法呢?
我想出了自己。 在hive-site.xml中,按照https://cwiki.apache.org/confluence/display/Hive/AdminManual+Configuration中的說明,用/ tmp/mydir替換$ {system:java.io.tmpdir}/$ {system:user.name}。
在蜂房的site.xml
<configuration>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
<description>Will remove your error occurring because of metastore_db in shark</description>
</property>
</configuration>
添加屬性根據你的系統中hive-env.sh添加Java和Hadoop路徑。
# Set HADOOP_HOME to point to a specific hadoop install directory
export HADOOP_HOME=/home/user17/BigData/hadoop
#hive
export HIVE_HOME=/home/user17/BigData/hive
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=$HIVE_HOME/conf
,也可以設置在.bashrc中
export JAVA_HOME=/home/user17/jdk
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_INSTALL=/home/user17/BigData/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HIVE_INSTALL=/home/user17/BigData/hive
export PATH=$PATH:$HIVE_INSTALL/bin
Note--這一切文件路徑是根據我的系統設置蜂巢和Hadoop的路徑,你應該根據你的系統給路徑。 讓我知道如果不工作
變化HFS-site.xml中這一特性
<name>hive.exec.scratchdir</name>
<value>/tmp/hive-${user.name}</value>
<name>hive.exec.local.scratchdir</name>
<value>/tmp/${user.name}</value>
<name>hive.downloaded.resources.dir</name>
<value>/tmp/${user.name}_resources</value>
<name>hive.scratch.dir.permission</name>
<value>733</value>
重啓蜂巢metastore和hiveserver2
我而HBase的開始HMASTER也遇到了同樣的錯誤。 這是通過指定hdfs目錄的路徑來更正的,在這裏hbase-site.xml hbase.site.xml 的hbase.rootdir屬性中存儲hbase數據,之前我只使用相對路徑。
路徑造成的異常:HDFS://本地主機:8020
正確的路徑:HDFS://本地主機:8020/HBase的
把下面的蜂房的site.xml年初
<property>
<name>system:java.io.tmpdir</name>
<value>/tmp/hive/java</value>
</property>
<property>
<name>system:user.name</name>
<value>${user.name}</value>
</property>
又見question
簡短和精確。 – 2017-03-24 10:49:51
這應該被標記爲答案。 – orim 2017-05-30 10:51:59
這是正確的答案,非常感謝! – 2017-06-01 12:10:56
可以粘貼您的HBase的-site.xml中和核心的site.xml – 2014-11-24 08:21:35