hive 使用 beeline 执行hql传参数; hive 使用distcp 和 MSCK 进行hive数据库迁移

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rav009/article/details/85168149

beeline 命令

-u 指定链接

-e 指定hql

-f 指定hql文件

--hiveconf 指定传参数,  参数在hql里形如 ${hiveconf:var}, 要有hiveconf:前缀

jdbc='jdbc:hive2://bd-master01-pe2.f.cn:10000/default;principal=hive/[email protected]'

beeline -u "$jdbc" --slient=true --outputformat=tsv2 --hiveconf date="20181115" -f /home/fr-renjie.wei/fix_daily_fact.hql 
beeline -u "$jdbc" --slient=true --outputformat=tsv2 --hiveconf date="20181115" -e 'select * from table where column1 like "${hiveconf:date}"'

hadoop distcp 可以在两个集群间快速迁移文件或文件夹, -u参数可以差异更新

在beeline里可以执行MSCK命令来让hive识别没有被添加metastore信息的文件

set hive.msck.path.validation=ignore; 

MSCK REPAIR TABLE db.table;

猜你喜欢

转载自blog.csdn.net/rav009/article/details/85168149