(1) 连接数据库时SSL问题
解决方法:useSSL=false要放最后
(2) jdbc:hive2://localhost:10091: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: Áõ¸ is not allowed to impersonate root org.apache.hadoop.ipc.RemoteException:User: Áõ¸ is not allowed to impersonate root
解决方法:
1、在core-site.xml添加:
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
2、修改hive-site.xml:
(3) Hive连接MySQL异常
查看可能原因:
1、注意MySQL的驱动包mysql-connector-java-x.x.xx-bin.jar是否已经正确拷贝到$HIVE_HOME/lib下
2、检查hive-site.xml中数据库相关属性是否配置正确。
3、注意是否MySQL的版本存在问题,或者服务的版本与驱动版本不匹配。
(4) HiveServer2端口冲突
输入hive.cmd --service hiveserver2显示默认端口10000被占用。
解决方法:修改配置文件hive-site.xml中的hive.server2.thrift.port属性值为未被占用的端口,重启HiveServer2即可。
(5) Required field 'client_protocol' is unset! Struct:TOpenSessionReq(client_protocol:null, configuration:{set:hiveconf:hive.server2.thrift.resultset.default.fetch.size=1000, use:database=default}).
版本不匹配,JDBC驱动程序的版本可能比Hive服务器的版本高。
解决方法:降低JDBC驱动到合适版本。