(4)Hive環(huán)境搭建

搭建步驟

  • JDK環(huán)境
  • Hadoop集群環(huán)境
  • Mysql安裝
  • Hive安裝

JDK安裝、Hadoop集群環(huán)境搭建

由于Hive底層依賴(lài)于Hadoop的HDFS和MapReduce,所以首先要搭建Hadoop的集群環(huán)境,在前篇中已經(jīng)介紹JDK和Hadoop的相關(guān)搭建方式,需要的同學(xué)可以參考下

Mysql安裝

準(zhǔn)備工作
  • 下載
    mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar

  • 卸載舊版
    先使用rpm -qa查詢(xún)是否已安裝mariadb或者mysql,若有,使用rpm -e --nodeps刪除

  • 刪除相關(guān)目錄
    find / -name mysql找出mysql相關(guān)目錄,清理干凈

RPM方式安裝
  • tar -xvf解壓下載的tarball
[root@test-68 mysqlrpm]# tar -xvf mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar 
mysql-community-client-8.0.22-1.el7.x86_64.rpm
mysql-community-client-plugins-8.0.22-1.el7.x86_64.rpm
mysql-community-common-8.0.22-1.el7.x86_64.rpm
mysql-community-devel-8.0.22-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.22-1.el7.x86_64.rpm
mysql-community-libs-8.0.22-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.22-1.el7.x86_64.rpm
mysql-community-server-8.0.22-1.el7.x86_64.rpm
mysql-community-test-8.0.22-1.el7.x86_64.rpm
  • 按照common、libs、client、server的順序依次安裝
[root@test-68 mysqlrpm]# rpm -ivh mysql-community-common-8.0.22-1.el7.x86_64.rpm --nodeps
warning: mysql-community-common-8.0.22-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-common-8.0.22-1.e################################# [100%]
[root@test-68 mysqlrpm]# rpm -ivh mysql-community-libs-8.0.22-1.el7.x86_64.rpm --nodeps
warning: mysql-community-libs-8.0.22-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-8.0.22-1.el7################################# [100%]
[root@test-68 mysqlrpm]# rpm -ivh mysql-community-libs-compat-8.0.22-1.el7.x86_64.rpm --nodeps
warning: mysql-community-libs-compat-8.0.22-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-compat-8.0.2################################# [100%]
[root@test-68 mysqlrpm]# rpm -ivh mysql-community-client-8.0.22-1.el7.x86_64.rpm --nodeps
warning: mysql-community-client-8.0.22-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-client-8.0.22-1.e################################# [100%]
root@test-68 mysqlrpm]# rpm -ivh mysql-community-server-8.0.22-1.el7.x86_64.rpm --nodeps
warning: mysql-community-server-8.0.22-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-server-8.0.22-1.e################################# [100%]
  • 啟動(dòng)
    service mysqld start
  • 查看啟動(dòng)狀態(tài)
    service mysqld status
  • 查看初始密碼
    cat /var/log/mysqld.log | grep password
  • 登陸
[root@test-68 mysqlrpm]# mysql -uroot -p
Enter password: 
  • 修改密碼
    alter user 'root'@'localhost' identified with mysql_native_password by 'XXXXX'
  • 修改內(nèi)網(wǎng)訪(fǎng)問(wèn)
use mysql;
update user set Host='192.168.1.%' where User = 'root';
  • 刷新修改
    flush privileges

Hive安裝

tarball下載

apache-hive-3.1.2-bin.tar.gz

解壓
cd /opt
tar -zxvf /root/apache-hive-3.1.2-bin.tar.gz
mv apache-hive-3.1.2-bin/ hive
配置環(huán)境變量
vim /etc/profile.d/hive.sh
##添加如下內(nèi)容后保存
export HIVE_HOME=/opt/hive
export PATH=$HIVE_HOME/bin:$PATH
##配置后重新加載profile
source /etc/profile
mysql驅(qū)動(dòng)

下載與安裝的mysql版本匹配的驅(qū)動(dòng)jar包,放入$HIVE_HOME/lib下

配置hive-site.xml
vim $HIVE_HOME/conf/hive-site.xml
##添加如下配置內(nèi)容
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--配置Hive Metastore-->
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.1.68:3306/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8</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>root</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>123456</value>
    </property>
</configuration>
修改hive對(duì)guava的依賴(lài)版本

啟動(dòng)的時(shí)候如果報(bào)java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument錯(cuò)誤,是由于guava的版本與hadoop的不一致導(dǎo)致的,可以將hive安裝目錄lib下的guava去除,替換成hadoop依賴(lài)的guava版本,hadoop的guava版本位置$HADOOP_HOME/share/hadoop/common/lib/guava-27.0-jre.jar

初始化
$HIVE_HOME/bin/schematool -dbType mysql -initSchema

執(zhí)行成功后,會(huì)在mysql中生成一些列相關(guān)的表,用于存儲(chǔ)hive相關(guān)的元數(shù)據(jù)

啟動(dòng)

由于已經(jīng)配置了hive相關(guān)的環(huán)境變量,直接執(zhí)行如下命令

hive
日志

默認(rèn)情況下,通過(guò)觀(guān)察/tmp/<user.name>/hive.log來(lái)了解hive運(yùn)行情況,也可通過(guò)修改conf/hive-log4j.properties的property.hive.log.dir來(lái)指定其他日志存放路徑

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容