如何从Beeline查询而无需身份验证

时间:2016-05-16 13:28:04

标签: hive hadoop2 beeline

我正在编写一个自动批处理脚本,它将在预定的时间间隔内检查直线状态 我已经编写了下面的代码来执行此操作,但问题是,我的群集的边缘节点似乎需要密码才能运行beeline命令。
代码:

for node in `cat /root/myscripts/edgeNodes.txt`
do
ssh ${node} "beeline -u  jdbc:hive2://${node}:10000/default -n $usrnm -p $pwd -e 'select  col1 , col2 from my_tab limit 3;'" >> /root/report/beeline_report.txt
done

-n $ntid -p $pwd是包版广告所在的位置。现在我将用户名和密码作为我的参数传递,但在部署时我无法在此脚本中对我的密码进行硬编码,因为脚本是自动化的,并且不需要人工输入(我将拥有删除-n $ntid -p $pwd部分。密码每个月都在变化。) 有没有办法更改Beeline配置以删除身份验证要求?如果是,那么我该如何处理,我对哪些文件进行了更改? 请帮忙,
问候。

1 个答案:

答案 0 :(得分:1)

我使用以下命令从shell脚本文件运行命令:

beeline -u "jdbc:hive2://" -e "your query" > output.txt

OR

ssh ${node} "beeline -u "jdbc:hive2://" -e 'query;'"

我希望这会有所帮助。