centos7 Hive1.1.0 安裝

環境如下
linux版本:CentOS 7.5.1804
jdk版本:jdk1.8.0_201
hadoop版本:hadoop-2.6.0-cdh5.10.0
hive版本:hive-1.1.0-cdh5.10.0

一、JDK

請參考文章 JDK1.8安裝


二、安裝Hadoop

請參考文章 安裝hadoop2.6.0(僞分佈式)


三、Mysql安裝

       本質上,hive只是個工具,包括它的數據分析,依賴於mapreduce,它的數據管理,依賴於外部系統。
       這一步其實不是必須的,因爲Hive默認的metadata(元數據)是存儲在Derby裏面的,但是有一個弊端就是同一時間只能有一個Hive實例訪問,這僅適合做開發程序時做本地測試,無法多用戶同時訪問。
       爲此,Hive提供了增強配置,可將數據庫替換成mysql等關係型數據庫,將存儲數據獨立出來在多個服務示例之間共享。

具體安裝步驟請參考文章 Centos7 Yum安裝 MySQL 5.7

四、Hive安裝

Hive我選用了hive-1.1.0-cdh5.10.0的版本
下載地址直接去官方下載就行
官方地址:https://archive.cloudera.com/cdh5/cdh/5/
或是直接點擊此鏈接進行下載 hive-1.1.0-cdh5.10.0.tar.gz

下載後將壓縮包上傳到服務器的制定路徑(如果不清楚如何操作的可查看文章:通過 Xshell 上傳文件到服務器 rzsz

解壓
tar -zxvf hive-1.1.0-cdh5.10.0.tar.gz
配置環境變量

修改 /etc/profile 文件:

vim /etc/profile

在文件中加入以下內容:

export HIVE_HOME=~/lib/hive-1.1.0-cdh5.10.0

修改 PATH,添加hive操作路徑
例如:

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin

注:HIVE_HOME是你的 hive安裝的根目錄

跟新配置
source /etc/profile
上傳JDBC包
cp mysql-connector-java-5.1.40-bin.jar ~/lib/hive-1.1.0-cdh5.10.0/lib
配置Hive

進入apache-hive-1.0.1-bin/conf目錄

1. 根據模板文件創建 hive-env.sh 文件
cp hive-env.sh.template hive-env.sh
2. 修改 hive-env.sh 文件

新增:

export HADOOP_HOME=~/lib/
export HIVE_CONF_DIR=/root/apache-hive-1.0.1-bin/conf
3. 設置 hive-site.xml 文件

創建文件

touch hive-site.xml

配置文件

vim hive-site.xml

設置爲

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
		<name>hive.metastore.warehouse.dir</name>
		<value>/user/hive/warehouse</value>
	</property>
	<property>
		<name>hive.server2.thrift.port</name>
		<value>10000</value>
	</property>
	<property>
		<name>hive.server2.thrift.bind.host</name>
	<!--172.16.12.160是Hive部署節點的IP,不是Hadoop集羣master的IP  -->
		<value>172.16.12.160</value>
	</property>
	<property>
		<name>hive.server2.long.polling.timeout</name>
		<value>5000</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://localhost:3306/hive?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>hive</value><!-- 數據庫連接用戶名 -->
	</property>
	<property>
		<name>javax.jdo.option.ConnectionPassword</name>
		<value>hive</value><!-- 數據庫連接密碼 -->
	</property>
	<property>
		<name>hive.hwi.listen.host</name>
		<value>0.0.0.0</value>
	</property>
	<property>
		<name>hive.hwi.war.port</name>
		<value>9999</value>
	</property>
	<property>
		<name>hive.hwi.war.file</name>
		<value>/lib/hive-hwi-1.0.1.war</value>
	</property>
</configuration>

注:如果你的數據庫不和hive在同一節點,請配置mysql遠程連接用戶的賬號和密碼

驗證hive

在命令行輸入 hive

hive
(1). 建表
create table t1(a int, b int, c int) row format delimited fields terminated by '\t';

查看錶信息

desc t1;

在這裏插入圖片描述
注:還可以通過mysql查看t1表的meta信息

(2). 加載本地數據
load data local inpath '/soft/t1.txt' overwrite into table t1;
沒有報錯,顯示正常,安裝完成

青冥有曉月

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章