真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Hive如何安裝

小編給大家分享一下Hive如何安裝,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供南鄭網(wǎng)站建設(shè)、南鄭做網(wǎng)站、南鄭網(wǎng)站設(shè)計、南鄭網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、南鄭企業(yè)網(wǎng)站模板建站服務(wù),10年南鄭做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

1、Hive安裝

1.1、hive安裝地址

1)Hive官網(wǎng)地址 http://hive.apache.org/

2)文檔查看地址 https://cwiki.apache.org/confluence/display/Hive/GettingStarted

3)下載地址 http://archive.apache.org/dist/hive/

4)github地址 https://github.com/apache/hive

1.2、MySQL安裝

1.2.1、檢查當前是否安裝mysql
#rpm -qa查詢 | -ivh安裝 | -e --nodeps卸載(不檢查依賴)
rpm -qa|grep mariadb
--> mariadb-libs-5.5.56-2.el7.x86_64  --如果存在通過如下命令卸載

sudo rpm -e --nodeps  mariadb-libs
1.2.2、解壓并安裝mysql
#必須按照如下順序依次安裝
#MySQl運行環(huán)境
sudo rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
#MySQL運行jar包
sudo rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
#MySQL擴展jar包
sudo rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
#MySQL客戶端
sudo rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
#MySQL服務(wù)器
sudo rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
1.2.3、刪除datadir目錄下內(nèi)容
#查看datadir路徑
cat /etc/my.cnf
--> datadir=/var/lib/mysql

#清空路徑目錄下內(nèi)容
sudo rm -rf /var/lib/mysql
1.2.4、初始化數(shù)據(jù)庫

sudo mysqld --initialize --user=mysql

1.2.5、啟動數(shù)據(jù)庫并修改相關(guān)配置
#啟動mysql服務(wù)
sudo systemctl start mysqld
sudo systemctl status mysqld

#查看臨時密碼
sudo cat /var/log/mysqld.log

#登錄數(shù)據(jù)庫
mysql -uroot -p(換行中輸入臨時密碼)

#更改密碼策略
set global validate_password_length=4;
set global validate_password_policy=0;

#修改登錄密碼
set password = password('123456')
#修改mysql庫下的user表中的root用戶允許任意ip連接
updata mysql.user set host="%" where user="root"

#刷新數(shù)據(jù)庫
flush privileges

1.3、Hive安裝

1.3.1、安裝部署
1)把apache-hive-3.1.2-bin.tar.gz上傳到linux的/opt/software目錄下

2)解壓apache-hive-3.1.2-bin.tar.gz到/opt/module/目錄下面
   --tar -zxvf /opt/software/apache-hive-3.1.2-bin.tar.gz -C /opt/module/

3)修改apache-hive-3.1.2-bin.tar.gz的名稱為hive
   --mv /opt/module/apache-hive-3.1.2-bin/ /opt/module/hive

4)修改/etc/profile.d/my_env.sh,添加環(huán)境變量
   --sudo vim /etc/profile.d/my_env.sh

5)添加內(nèi)容
   #HIVE_HOME
   export HIVE_HOME=/opt/module/hive
   export PATH=$PATH:$HIVE_HOME/bin

6)解決日志Jar包沖突
   --mv $HIVE_HOME/lib/log4j2-slf4j-impl-2.10.0.jar $HIVE_HOME/lib/log4j2-slf4j-impl-2.10.0.bak
1.3.2、hive元數(shù)據(jù)配置到Mysql
#1.將MySQL的JDBC驅(qū)動放置在Hive的lib目錄下
cp /opt/software/mysql-connector-java-5.1.37.jar $HIVE_HOME/lib

#2.配置Metastore到MySQL
vim /opt/module/hive/conf/hive-site.xml



    
    
        javax.jdo.option.ConnectionURL
        jdbc:mysql://hadoop102:3306/metastore?useSSL=false
    

    
    
        javax.jdo.option.ConnectionDriverName 
        com.mysql.jdbc.Driver
    

	
    
        javax.jdo.option.ConnectionUserName
        root
    

    
    
        javax.jdo.option.ConnectionPassword
        123456
    
    
    
        hive.metastore.warehouse.dir
        /user/hive/warehouse
    
   
    
    
        hive.server2.thrift.port
        10000
    
    
    
        hive.server2.thrift.bind.host
        hadoop102
    

    
    
        hive.metastore.uris
        thrift://hadoop102:9083
    
    
    
        hive.metastore.event.db.notification.api.auth
        false
    
    
    
        hive.metastore.schema.verification
        false
    

    
    
        hive.server2.active.passive.ha.enable
        true
    

1.4、啟動Hive

1.4.1、元素據(jù)庫初始化
#登錄MySQL 創(chuàng)建元數(shù)據(jù)庫
create database metastore
#退出MySQL 初始化元數(shù)據(jù)
schematool -initSchema -dbType mysql -verbose
1.4.2、hive啟動服務(wù)
#啟動元數(shù)據(jù)服務(wù)(前臺服務(wù),連接mysql獲取元數(shù)據(jù))
hive --service metastore
#啟動hiveserver2服務(wù)(前臺服務(wù),jdbc連接服務(wù))
hive --service hiveserver2

#——0 標準輸入	——1 標準輸出	——2 錯誤輸出	-->& 將一個句柄的輸出寫入到另一個句柄的輸入中。
#——nohup: 命令開頭,表示不掛起,也就是關(guān)閉終端進程也繼續(xù)保持運行狀態(tài)	——&: 命令結(jié)尾,表示后臺運行
nohup hive --service metastore>log.txt 2>&1 &
nohup hive --service hiveserver2>log2.txt 2>&1 &
1.4.3、hive啟動服務(wù)腳本
#!/bin/bash
HIVE_LOG_DIR=$HIVE_HOME/logs
if [ ! -d $HIVE_LOG_DIR ]
then
	mkdir -p $HIVE_LOG_DIR
fi
#檢查進程是否運行正常,參數(shù)1為進程名,參數(shù)2為進程端口
function check_process()
{
    pid=$(ps -ef 2>/dev/null | grep -v grep | grep -i $1 | awk '{print $2}')
    ppid=$(netstat -nltp 2>/dev/null | grep $2 | awk '{print $7}' | cut -d '/' -f 1)
    echo $pid
    [[ "$pid" =~ "$ppid" ]] && [ "$ppid" ] && return 0 || return 1
}

function hive_start()
{
    metapid=$(check_process HiveMetastore 9083)
    cmd="nohup hive --service metastore >$HIVE_LOG_DIR/metastore.log 2>&1 &"
    cmd=$cmd" sleep 4; hdfs dfsadmin -safemode wait >/dev/null 2>&1"
    [ -z "$metapid" ] && eval $cmd || echo "Metastroe服務(wù)已啟動"
    server2pid=$(check_process HiveServer2 10000)
    cmd="nohup hive --service hiveserver2 >$HIVE_LOG_DIR/hiveServer2.log 2>&1 &"
    [ -z "$server2pid" ] && eval $cmd || echo "HiveServer2服務(wù)已啟動"
}

function hive_stop()
{
    metapid=$(check_process HiveMetastore 9083)
    [ "$metapid" ] && kill $metapid || echo "Metastore服務(wù)未啟動"
    server2pid=$(check_process HiveServer2 10000)
    [ "$server2pid" ] && kill $server2pid || echo "HiveServer2服務(wù)未啟動"
}

case $1 in
"start")
    hive_start
    ;;
"stop")
    hive_stop
    ;;
"restart")
    hive_stop
    sleep 2
    hive_start
    ;;
"status")
    check_process HiveMetastore 9083 >/dev/null && echo "Metastore服務(wù)運行正常" || echo "Metastore服務(wù)運行異常"
    check_process HiveServer2 10000 >/dev/null && echo "HiveServer2服務(wù)運行正常" || echo "HiveServer2服務(wù)運行異常"
    ;;
*)
    echo Invalid Args!
    echo 'Usage: '$(basename $0)' start|stop|restart|status'
    ;;
esac
1.4.4、Hive兩種啟動方式
#1.Hive啟動
bin/hive
#打印當前庫與表頭需配置hive-site.xml

    hive.cli.print.header
    true
    Whether to print the names of the columns in query output.


    hive.cli.print.current.db
    true
    Whether to include the current database in the Hive prompt.


#2.JDBC啟動
beeline -u jdbc:hive2://hadoop102:10000 -n luck

1.5 hive交互命令

#查看所有命令
bin/hive -help

#1. hive -e 不進入hive窗口執(zhí)行sql語句
bin/hive -e "select id from student;"

#2. hive -f 執(zhí)行腳本中的sql語句
echo "select * from student" >> sql.txt
bin/hive -f /opt/module/hive/datas/sql.txt  > /opt/module/datas/hive_result.txt

#3.hive中查看hdfs文件系統(tǒng)
hive > dfs -ls

#4.hive輸入歷史
/home/luck/. hivehistory  
/home/luck/.beeline/history

1.6 屬性配置說明

#1.hive日志存儲位置
  #修改hive-log4j.properties.template為hive-log4j.properties
  property.hive.log.dir=/opt/module/hive/logs
  
#2.JVM堆內(nèi)存設(shè)置
  #修改hive-env.sh.template為hive-env.sh
  export HADOOP_HEAPSIZE=1024

#3.參數(shù)配置的優(yōu)先級
 #3.1 配置文件(永久)
  #Hadoop配置文件-->默認配置文件:hive-default.xml-->用戶自定義配置文件:hive-site.xml
 #3.2 命令行參數(shù)(hive啟動前,僅對本次hive有效)
  beeline -u jdbc:hive2://hadoop102:10000 -n luck -hiveconf mapreduce.job.reduces=10;
 #3.3 參數(shù)聲明(hive啟動后,僅對本次hive有效)
  hive (default)> set mapreduce.job.reduces=10;
  
#優(yōu)先級:參數(shù)聲明>命令行參數(shù)>配置文件

以上是“Hive如何安裝”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


標題名稱:Hive如何安裝
網(wǎng)頁URL:http://weahome.cn/article/jidjpc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部