Hive詳細部署教程
此篇部落格承接上篇Hadoop和Zookeeper的部署教程,将會詳細地對HIve的部署做一個整理,Hive相當于是封裝在HDFS和Mapreduce上的一套sql引擎,隻需要安裝在某個叢集的主節點上即可,同時需要注意安裝Hive前請確定虛拟機主節點上已經安裝好了mysql,那麼,現在正式開始吧!
1. 安裝準備
首先我們準備好Hive的安裝包,這裡用到的Hive版本是2.1.0
2. 詳細安裝步驟
安裝前,先将虛拟機做一個快照以備不時之需
2.1 解壓縮并修改環境變量
1. 使用遠端傳輸軟體将安裝包放到/home/centos/downloads下
2. 将此安裝包解壓縮至/soft目錄下
cd /home/centos/downloads
tar -xzvf apache-hive-2.1.0-bin.tar.gz -C /soft
3. 建立符号連結
cd /soft
ln -s apache-hive-2.1.0-bin hive
4. 配置并生效環境變量
nano /etc/profile
末尾處添加,添加後儲存退出
#hive環境變量
export HIVE_HOME=/soft/hive
export PATH=$PATH:$HIVE_HOME/bin
生效環境變量
source /etc/profile
5. 修改配置檔案/soft/hive/conf
1) cd /soft/hive/conf
2)将所有template檔案重命名
rename ".template" "" *.template
3)拷貝hive-default.xml為hive-site.xml
cp hive-default.xml hive-site.xml
4)正式配置檔案
修改hive-site.xml檔案
說明:由于配置hive需要使用到mysql的資料庫存放中繼資料,是以需要配置mysql四大參數,即驅動,URL,username以及password
需要修改的關鍵配置如下:
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>Username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://s101:3306/hive?createDatabaseIfNotExist=true</value>
<description>
JDBC connect string for a JDBC metastore.
To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL.
For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
</description>
</property>
5)修改剩餘配置:修改所有的臨時目錄為/home/centos/hive,修改所有的使用者名為root使用者
sed -i \'s@${system:java.io.tmpdir}@/home/centos/hive@g\' hive-site.xml
sed -i \'s@${system:user.name}@root@g\' hive-site.xml
6. 使用遠端傳輸軟體将mysql-connector-java-5.1.44.jar檔案放在hive的lib下(/soft/hive/lib)
7. 進入mysql并授權
mysql -uroot -proot
mysql> grant all PRIVILEGES on *.* to root@\'s101\' identified by \'root\';
8. 初始化中繼資料:schematool --initSchema --dbType mysql
9. 啟動Hive用戶端:hive,啟動成功,說明配置完成!