最簡單的-hive搭建

hadoop集羣搭建方案

hive單機搭建方案

hbase集羣搭建方案

storm集羣搭建方案

flume集羣搭建方案

spark3集羣搭建方案

機器:

10.211.55.67 master
10.211.55.68 slave1
10.211.55.69 slave2

hive官網下載地址:http://mirror.bit.edu.cn/apache/hive/
配置環境變量

#hive
export HIVE_HOME=/home/apache-hive-3.1.2/
export PATH=$PATH:$HIVE_HOME/bin

進入conf,拷貝配置文件
cp hive-default.xml.template hive-site.xml
修改以下配置-mysql

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <!-- mysql 連接URL 如果hive和mysql在同一服務器上,使用localhost -->
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://10.211.55.70:3306/myhive</value>
    </property>

    <!-- mysql 連接用戶名 -->
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>

    <!-- mysql 連接密碼 -->
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>root!</value>
    </property>

    <!-- mysql 連接驅動 -->
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
</configuration>

下載mysql-connector-java/5.1.6 放在hive/lib 目錄下

mysql創建hive database

執行

schematool -initSchema -dbType mysql

遇到的問題解決

1、
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

解決

<property>
      <name>system:java.io.tmpdir</name>
      <value>/home/root/hdp/tmpdir</value>
</property>
 
<property>
     <name>system:user.name</name>
     <value>hive</value>
</property>
2、
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V
        at org.apache.hadoop.conf.Configuration.set(Configuration.java:1357)
        at org.apache.hadoop.conf.Configuration.set(Configuration.java:1338)
        at org.apache.hadoop.mapred.JobConf.setJar(JobConf.java:536)
        at org.apache.hadoop.mapred.JobConf.setJarByClass(JobConf.java:554)
        at org.apache.hadoop.mapred.JobConf.<init>(JobConf.java:448)
        at org.apache.hadoop.hive.conf.HiveConf.initialize(HiveConf.java:5141)
        at org.apache.hadoop.hive.conf.HiveConf.<init>(HiveConf.java:5099)
        at org.apache.hadoop.hive.common.LogUtils.initHiveLog4jCommon(LogUtils.java:97)
        at org.apache.hadoop.hive.common.LogUtils.initHiveLog4j(LogUtils.java:81)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:699)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:683)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:323)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:236)

解決

查看hadoop安裝目錄下share/hadoop/common/lib內guava.jar版本
查看hive安裝目錄下lib內guava.jar的版本 如果兩者不一致,刪除版本低的,並拷貝高版本的 問題解決!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章