天天看點

centos7中安裝hive-1.2.1單使用者模式搭建版本搭建

hive有三種安裝方式:本地模式、單使用者模式、多使用者模式。

本地模式中依賴本地derby資料庫,單使用者和多使用者模式依賴mysql資料庫。

開始安裝
           

1、準備安裝節點

192.168.25.101 node01 //安裝mysql服務

192.168.25.102 node02 //安裝hive

2、安裝mysql

yum install mysql-server -y

解決yum安裝沒有可用包https://www.cnblogs.com/yowamushi/p/8043054.html

修改mysql權限:

GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123’ WITH GRANT OPTION;

flush privileges;

3、解壓apache-hive-1.2.1-bin.tar.gz

tar -xzvf apache-hive-1.2.1-bin.tar.gz -C 目标檔案夾

4、配置hive-site.xml檔案

将hive-default.xml.template更改為hive-site.xml

檔案中配置為:

hive.metastore.warehouse.dir指定中繼資料存放檔案夾

javax.jdo.option.ConnectionURL指定mysql的url位址

javax.jdo.option.ConnectionDriverName指定mysql連接配接驅動

javax.jdo.option.ConnectionUserName指定mysql使用者名

javax.jdo.option.ConnectionPassword指定mysql登入密碼

<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive_remote/warehouse</value>  
</property>  
<property>  
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://node01/hive_remote?createDatabaseIfNotExist=true</value>  
</property>  
   
<property>  
  <name>javax.jdo.option.ConnectionDriverName</name>  
  <value>com.mysql.jdbc.Driver</value>  
</property>  
   
<property>  
  <name>javax.jdo.option.ConnectionUserName</name>  
  <value>root</value>  
</property>  
   
<property>  
  <name>javax.jdo.option.ConnectionPassword</name>  
  <value>123</value>  
</property>  

           

5、配置環境變量

export HIVE_HOME=/opt/hive

PATH= P A T H : PATH: PATH:JAVA_HOME/bin: H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPH​OME/bin:HADOOP_HOME/sbin: Z O O K E E P E R H O M E / b i n : ZOOKEEPER_HOME/bin: ZOOKEEPERH​OME/bin:HIVE_HOME/bin

export JAVA_HOME=/usr/java/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export HADOOP_HOME=/opt/hadoop
export HIVE_HOME=/opt/hive
export ZOOKEEPER_HOME=/opt/zookeeper-3.4.6
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin:$HIVE_HOME/bin
           

6、将mysql驅動包mysql-connector-java-5.1.32-bin.jar拷貝到hive安裝包lib下

mv mysql-connector-java-5.1.32-bin.jar /opt/hive/lib

7、node02節點中執行hive指令(需打開hadoop,才會執行hive成功)

若出現下面錯誤

[ERROR] Terminal initialization failed; falling back to unsupported

java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected

at jline.TerminalFactory.create(TerminalFactory.java:101)

錯誤的原因: Hadoop jline版本和hive的jline不一緻

将當期hive中的jline檔案覆寫hadoop中的jline檔案即可