hive 客户端连接hive
精选
原创
©著作权归作者所有:来自51CTO博客作者雍州无名的原创作品,请联系作者获取转载授权,否则将追究法律责任
1.启动hive服务(主要用于jdbc连接hive 和 本地客户端连接hive)
./hive --service hiveserver2
2.查看hive端口(默认是10000)是否已经启动
netstat -nptl | grep 10000

由于ip地址显示为0.0.0.0所以需要修改配置文件
3.修改配置文件vim hive-site.xml
<property>
<name>hive.server2.thrift.bind.host</name>
<value>10.2.10.254</value>
<description>Bind host on which to run the HiveServer2 Thrift service.</description>
</property>
或者
<property>
<name>hive.server2.thrift.bind.host</name>
<value>master</value>
<description>Bind host on which to run the HiveServer2 Thrift service.</description>
</property>

从新启动服务,查看端口

4.本地客户端访问hive(在bin目录下有一个 beeline)

测试连接,hive默认的用户名为 root 没有密码
!connect jdbc:hive2://master:10000/default

此时出现如下错误
Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException
(org.apache.hadoop.security.authorize.AuthorizationException):
User: root is not allowed to impersonate root (state=,code=0)
此时需要修改hadoop目录下的配置文件core-site.xml,在其中增加以下配置
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>root</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>

配置完成后重启hadoop,然后再重新执行上述步骤

5.使用命令访问hive中的表
