集群配置--hive配置hiveserver2

通过远程连接hive,出现问题,原因是没有配置hiveserver2的用户密码
Error: Could not open client transport with JDBC Uri: jdbc:hive2://hadoop2:10000: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hadoop is not allowed to impersonate hive2 (state=08S01,code=0)
在这里插入图片描述

1、修改配置文件

编辑Hadoop的 core-site.xml文件:
在配置文件末尾加上以下内容

  <property>
    <name>hadoop.proxyuser.hadoop.hosts</name>
    <value>*</value>
  </property>
  <property>
    <name>hadoop.proxyuser.hadoop.groups</name>
    <value>*</value>
  </property>

其中,hadoop为上面提到的运行Hadoop namenode进程的用户名。

2、编辑Hive的hive-site.xml

在配置文件末尾加上以下内容

  <property>
    <!-- hiveserver2用户名 -->
    <name>beeline.hs2.connection.user</name>
    <value>hive2</value>
  </property>

  <property>
    <!-- hiveserver2密码 -->
    <name>beeline.hs2.connection.password</name>
    <value>hive2</value>
  </property>

  <property>
     <!-- hiveserver2端口 -->
    <name>beeline.hs2.connection.hosts</name>
    <value>localhost:10000</value>
  </property>

3、重启Hadoop

测试配置是否成功
启动hiveserver2

$ $HIVE_HOME/bin/hiveserver2

连接方式一
使用beeline连接hiveserver2

$ $HIVE_HOME/bin/beeline -u jdbc:hive2://localhost:10000;auth=hive2;password=hive2

这里的用户名hive2和密码hive2自然便是前面在hive的配置文件hive-site.xml中配置的用户名和密码啦

连接方式二
先启动beeline

$ $HIVE_HOME/bin/beeline 

然后在beeline中连接hiveserver2:

beeline> !connect jdbc:hive2://localhost:10000

接着输入hive用户名和密码即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值