中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker安裝hive1.2

發布時間:2020-08-01 16:13:18 來源:網絡 閱讀:663 作者:九月朦朧 欄目:大數據

構建數據倉庫 (Slave1)
1、解壓數據庫

tar -zxvf apache-hive-1.2.2-bin.tar.gz /usr/local/
cd /usr/local/
mv apache-hive-1.2.2 hive

2、為hive添加環境變量
編輯/etc/profile文件,增加hive相關的環境變量配置
docker安裝hive1.2
profile文件編輯完成后,執行下面命令,讓配置生效,命令是
docker安裝hive1.2
3、配置hive-site.xml
hive-site.xml相關的配置

cd /usr/local/hive/conf
cp hive-default.xml.template hive-site.xml

然后用hadoop創建目錄

hadoop fs -mkdir -p /user/hive/warehouse
hadoop fs -mkdir -p /tmp/hive/

給剛才新建的目錄賦予讀寫權限,執行命令:

hadoop fs -chmod 777 /user/hive/warehouse
hadoop fs -chmod 777 /tmp/hive

之所以創建目錄是因為hive-site-xml里有這樣的配置
docker安裝hive1.2
docker安裝hive1.2

檢查目錄是否創建成功

hadoop fs -ls /user/hive/
hadoop fs -ls /tmp/

docker安裝hive1.2

修改hive-site.xml中的臨時目錄
將hive-site.xml文件中的${system:java.io.tmpdir}替換為hive的臨時目錄,例如我替換為/usr/local/hive/tmp,將${system:user.name}都替換為root, 并且賦予讀寫權限
docker安裝hive1.2
docker安裝hive1.2
注意要把所有的都替換,這里用正則替換

sed -i 's@${system:java.io.tmpdir}@/usr/local/hive/tmp/@g' hive-site.xml
sed -i 's@${system:user.name}@root@g' hive-site.xml

修改hive-site.xml數據庫相關的配置
搜索javax.jdo.option.ConnectionURL,將該name對應的value修改為MySQL的地址
docker安裝hive1.2
docker安裝hive1.2
搜索javax.jdo.option.ConnectionDriverName,將該name對應的value修改為MySQL驅動類路徑
docker安裝hive1.2
搜索javax.jdo.option.ConnectionUserName,將對應的value修改為MySQL數據庫登錄名:
docker安裝hive1.2
搜索javax.jdo.option.ConnectionPassword,將對應的value修改為MySQL數據庫的登錄密碼:
docker安裝hive1.2
搜索hive.metastore.schema.verification,將對應的value修改為false:
docker安裝hive1.2
4、加載mysql驅動
將MySQL驅動包上載到lib目錄
cd /usr/local/hive/lib/
wget ftp://172.18.79.77/mysql-connector-java-5.1.5-bin.jar
注意這里的地址是我的私有地址,可以去百度找mysql驅動包,或者在我的博客里下載(因為51cto上重復的資料不能上傳,很無語,就隨便加了個txt文件和驅動包弄成一個壓縮包再上傳的)。
docker安裝hive1.2
5、修改hive-env.sh
新建hive-env.sh文件并進行修改

cd /usr/local/hive/conf

將hive-env.sh.template文件復制一份,并且改名為hive-env.sh

cp hive-env.sh.template hive-env.sh

打開hive-env.sh配置并且添加以下內容:

export HADOOP_HOME=/usr/local/hadoop
export HIVE_CONF_DIR=/usr/local/hive/conf
export HIVE_AUX_JARS_PATH=/usr/local/hive/lib

docker安裝hive1.2

6、初始化mysql
對MySQL數據庫進行初始化
進入mysql數據庫,創建hive用戶和hive數據庫

CREATE USER 'hive'@'localhost' IDENTIFIED BY "hive";
grant all privileges on . to hive@localhost identified by 'hive';
create database hive;

刷新數據庫

flush privileges;

退出

exit;

測試hive用戶是否創建成功

mysql -uhive -p
Enter passwd: hive

進入到hive的bin目錄 執行命令:

cd /usr/local/hive/bin

對數據庫進行初始化,執行命令:

schematool -initSchema -dbType mysql

執行成功后,hive數據庫里已經有一堆表創建好了
docker安裝hive1.2
7、測試hive
啟動hive并測試
進入到hive的bin目錄執行命令:

cd /usr/local/hive/bin

執行hive腳本進行啟動,執行命令:

./hive

docker安裝hive1.2

執行查看sum函數的詳細信息的命令:

desc function sum;

docker安裝hive1.2

執行新建數據庫的hive命令:

create database db_hive;

docker安裝hive1.2

在剛才創建的數據庫中創建數據表,執行hive命令:

use db_hive;
create table student(id int,name string) row format delimited fields terminated by '\t';

docker安裝hive1.2

將文件數據寫入表中
在/usr/local/hive目錄內新建一個文件
執行Linux命令(最好是重新打開一個終端來執行):

touch /opt/hive/student.txt

docker安裝hive1.2

docker安裝hive1.2

說明:ID和name直接是TAB鍵,不是空格,因為在上面創建表的語句中用了terminated by '\t'所以這個文本里id和name的分割必須是用TAB鍵(復制粘貼如果有問題,手動敲TAB鍵吧),還有就是行與行之間不能有空行,否則下面執行load,會把NULL存入表內,該文件要使用unix格式,如果是在windows上用txt文本編輯器編輯后在上載到服務器上,需要用工具將windows格式轉為unix格式,例如可以使用Notepad++來轉換。
完成上面的步驟后,在磁盤上/opt/hive/student.txt文件已經創建成功,文件中也已經有了內容,在hive命令行中執行加載數據的hive命令:

load data local inpath '/usr/local/hive/std.txt' into table db_hive.std;

docker安裝hive1.2

執行命令,查看是否把剛才文件中的數據寫入成功
docker安裝hive1.2

查看頁面
http://172.18.74.105:50070/explorer.html#/user/hive/warehouse/db_hive.db/student
docker安裝hive1.2

點擊std.txt
docker安裝hive1.2

在MySQL數據庫中執行select語句,查看hive創建的表

select * from hive.TBLS;

docker安裝hive1.2

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

老河口市| 宁晋县| 鹤庆县| 武义县| 缙云县| 崇明县| 二连浩特市| 九江市| 三明市| 平谷区| 叙永县| 伊金霍洛旗| 娱乐| 马山县| 兰坪| 平果县| 阿瓦提县| 南昌县| 开江县| 镇赉县| 科尔| 天津市| 桐乡市| 临清市| 永靖县| 曲周县| 阜新| 阿图什市| 承德市| 汪清县| 肃宁县| 娱乐| 铜川市| 玛纳斯县| 榆中县| 丽江市| 舟曲县| 罗源县| 桃园县| 富顺县| 广宗县|