CentOS 安裝Hive 3.1.2

環境需求

  • jdk 1.8
  • Hadoop 3
  • mysql 8

安裝資源

https://hive.apache.org/downloads.html

步驟

1 解壓, 配置環境變量

tar -xf apache-hive-3.1.2-bin.tar.gz
cd apache-hive-3.1.2-bin
export HIVE_HOME=`pwd`
export PATH=$HIVE_HOME/bin:$PATH

2 創建Hive所需HDFS目錄

$HIVE_HOME/bin/init-hive-dfs.sh 
# 可選參數
--warehouse-dir=/user/hive/warehouse
--tmp-dir=/tmp

3.1 執行數據庫初始化(derby方式)

cd $HIVE_HOME/bin
schematool -dbType derby -initSchema

3.2 執行數據庫初始化(mysql方式)

先進行mysql的配置

cd $HIVE_HOME/conf
touch hive-site.xml

配置內容:

<configuration>
	<property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://<MYSQL地址>:3306/hive?useSSL=false</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionDriverName</name>
		<value>com.mysql.cj.jdbc.Driver</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionUserName</name>
		<value>MYSQL用戶名</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionPassword</name>
		<value>MYSQL密碼</value>
	</property>
	<property>
		<name>hive.metastore.schema.verification</name>
		<value>false</value>
	</property>
</configuration>

將mysql驅動放入$HIVE_HOME/lib/文件夾,
驅動下載地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.18/mysql-connector-java-8.0.18.jar

最後進入hive的bin目錄初始化

cd $HIVE_HOME/bin
schematool -dbType mysql -initSchema

運行

cd $HIVE_HOME/bin
# 啓動hiserver2
hiveserver2 # 或 hive --service hiveserver2

# 啓動metastore服務
hive --service metastore -p 9083

常見錯誤

1 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument

原因:Hive依賴的guava版本和Hadoop依賴的版本不一樣
解決方法:

mkdir $HIVE_HOME/lib/bak/
mv $HIVE_HOME/lib/guava-*.jar /HIVE_HOME/lib/bak/
cp $HADOOP_HOME/share/hadoop/common/lib/guava-*.jar $HIVE_HOME/lib
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章