php连hiveservice2,hiveserver2启动成功但无法通过beeline连接
可能是配置的問題。
我將hive.metastore.uris從配置文件中注釋掉之后解決了hiveserver2啟動成功但無法通過beeline連接的問題。
[root@node03 conf]# vi hive-site.xml
hive.metastore.warehouse.dir
/user/hive_remote/warehouse
javax.jdo.option.ConnectionURL
jdbc:mysql://node01/hive_remote?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
123
hive.server2.thrift.port
10000
hive.server2.thrift.bind.host
node03
---------------------------------------------------------
問題過程:
我創建了4臺centos虛擬機,node03做hive的mestore和hiveserver2節點,node04做hive客戶端。
在node使用hiveserver2命令之后,在hive04使用beeline連接時出現無法連接的問題:
[root@node04 conf]# beeline -u jdbc:hive2://node03:10000/default -n root
Connecting to jdbc:hive2://node03:10000/default
Error: Could not open client transport with JDBC Uri: jdbc:hive2://node03:10000/default: java.net.ConnectException: Connection refused (Connection refused) (state=08S01,code=0)
Beeline version 1.2.2by Apache Hive0: jdbc:hive2://node03:10000/default (closed)>
首先想到去查看10000端口的狀態:
發現10000端口已經啟用了,這就很奇怪了。
想了一會兒,嘗試把metastore也啟動起來看看,啟動metastore之后發現node04居然可以連接了!
自己對hive-site.xml配置也不是很熟悉,但是之前搭建hive的時候確實遇到過hiverserver2無法啟動的問題,當時好像刪掉了什么東西。
既然metastore的配置和hiveserver2的配置有關聯(?),那就去掉一個試試。
于是把node03中hive-site.xml里的metastore的配置去掉(其實hive服務端好像也沒必要配置metastore uri,只要客戶端知道在哪不就行了嗎),重新啟動hiveserver2,在node04再次用beeline連接,竟然可以了???
總結
以上是生活随笔為你收集整理的php连hiveservice2,hiveserver2启动成功但无法通过beeline连接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HostEase美国高防服务器租用方案推
- 下一篇: java 数组中差值最大数对,[算法题]