1.下載hive-1.2.1安裝包 http://archive.apache.org/dist/hive/hive-1.2.1/apache-hive-1.2.1-bin.tar.gz
2.將安裝包傳到集群所有節點上
3.所有節點root用戶下
cd /opt/cloudera/parcels/CDH/lib/hive
mkdir lib121
4.所有節點解壓 apache-hive-1.2.1-bin.tar.gz
5.所有節點將解壓出來hive/lib下所有文件拷貝到lib121
6.Coudera 界面停止Hive服務,如果安裝了Hue,Ozzie,Impala先停掉再停掉Hive
6.所有節點修改HIVE_LIB變量 HIVE_LIB=${HIVE_HOME}/lib ==> HIVE_LIB=${HIVE_HOME}/lib121
vim /opt/cloudera/parcels/CDH/lib/hive/bin/hive
7.所有節點更新hadoop上jline jar包,並刪除老的jlien jar包
ln -s /opt/cloudera/parcels/CDH/lib/hive/lib121/jline-2.12.jar /opt/cloudera/parcels/CDH/lib/hadoop-yarn/lib/jline-2.12.jar
rm -rf /opt/cloudera/parcels/CDH/lib/hadoop-yarn/lib/jline-0.94.jar
8.元數據節點備份MySQL中hive元數據庫
mysqldump -uroot -hhserver -padmin123 hive > hive013.sql
9.元數據節點進入mysql
create database hive013 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
grant all privileges on *.* to 'root'@'hserver' identified by 'admin123' with grant option;
flush privileges;
use hive013;
source hive013.sql;
10.元數據節點升級Hive元數據庫
升級前查看升級腳本,評估影響,特別是生產環境,根據業務需求更改過元數據的,如果是接手別人的,那就比較苦逼了,每個元數據庫表結構都要看一遍。
如果沒有動過就直接升級就好
cd /home/dp/apache-hive-1.2.1-bin/scripts/metastore/upgrade/mysql
mysql -uroot -hhserver -padmin123
use hive;
source upgrade-0.13.0-to-0.14.0.mysql.sql;
source upgrade-0.14.0-to-1.1.0.mysql.sql;
source upgrade-1.1.0-to-1.2.0.mysql.sql;
exit;
11.cloudera 管理界面啟動Hive服務
12.任意節點
hive #進入前hive shell界面
show databases;
use testupdate;
show tables;
select * from test1; #查看是否原來的數據還在
insert into test1 values("AAAA","BBBB","CCCC");
select * from test1;
#hive支持行級操作了!
https://blog.csdn.net/xjping0794/article/details/77542096