您的位置:首页 > 其它

hive升级测试记录

2015-09-24 16:10 405 查看
一.hive升级记录

1.备份hive元数据库

mysqldump -uhive_T -p1234455 -h192.168.0.1 hive > hive-0.10.sql

2.将备份的hive数据库导入到一个新的数据库,用来做升级测试的库。

mysql -uhive_T -p1234455 -h192.168.0.1 --database hive_0_14_test < hive-0.10.sql

3.登录mysql,将hive0.14安装包中的scripts/metastore/upgrade/mysql 执行升级脚本。

use hive_0_14_test;

source $HIVE_HOME/scripts/metastore/upgrade/mysql/upgrade-0.10.0-to-0.11.0.mysql.sql;

source $HIVE_HOME/scripts/metastore/upgrade/mysql/upgrade-0.11.0-to-0.12.0.mysql.sql;

source $HIVE_HOME/scripts/metastore/upgrade/mysql/upgrade-0.12.0-to-0.13.0.mysql.sql;

source $HIVE_HOME/scripts/metastore/upgrade/mysql/upgrade-0.13.0-to-0.14.0.mysql.sql;

ps:(1).我是在本地mysql客户端远程连接执行的,需要将相关的脚本中的*.sql脚本中的路径指定到相关的实际路径,例如

将upgrade-0.11.0-to-0.12.0.mysql.sql脚本中的SOURCE 013-HIVE-3255.mysql.sql语句更改为实际的路径

source $HIVE_HOME/scripts/metastore/upgrade/mysql/013-HIVE-3255.mysql.sql

(2).在执行upgrade-0.13.0-to-0.14.0.mysql.sql时,需要将019-HIVE-7784.mysql.sql中的语句

CREATE INDEX PCS_STATS_IDX ON PART_COL_STATS (DB_NAME,TABLE_NAME,COLUMN_NAME,PARTITION_NAME) USING BTREE;

改为

CREATE INDEX PCS_STATS_IDX USING BTREE ON PART_COL_STATS (DB_NAME,TABLE_NAME,COLUMN_NAME,PARTITION_NAME) ;
这个我怀疑是mysql版本的问题

4.替换hive客户端为hive0.14版本,并修改相应的配置文件。

二.hive升级后测试记录

测试方法:找一个hive0.10的入口机和已经升级到0.14的入口机指向同一个升级后的元数据库。

测试内容:表的创建、删除、数据加载、表查询在这两个版本中的测试

1.表创建

create external table testhive (

id int,

name string

)

partitioned by (dt string)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY '\t'

2.数据加载

alter table testhive add partition (dt='test') location '/tmp/testhive'

3.测试sql

select * from testhive;

select id,count(*) from testhive group by id;

4.表删除

drop table testhive;

测试结果:

以上测试在hive0.10以及hive0.14客户端连接同一个升级后的hive元数据库,在这连个版本中均可以成功运行,并且在一个版本中创建数据表后在另一个版本中也可以看到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: