hive提供了thrift服務,只要客戶端符合thrift標準就可以與它對接。
這樣可以以在一臺服務器上啟動一個hive,其他用戶通過thrift訪問hive。
hive自帶了一個thrift的客戶端-------bin/beeline
啟動方式:
1、hadoop的core-site.xml增加配置
<property><name>hadoop.proxyuser.root.groups</name><value>*</value>
</property>
如果是 <value>*</value> 就是所有用戶<property><name>hadoop.proxyuser.root.hosts</name><value>*</value>
</property>
這里配置了所有ip都允許代理訪問。如果不允許,則配置IP地址
2、啟動hive的hiveserver2
命令:[hadoop@nbdo3 bin]$ hiveserver2?
后臺使用:http://blog.csdn.net/zengmingen/article/details/78392307
3、在其他機子上,或者新開連接,使用beeline
我是clone session
[hadoop@nbdo3 ~]$ beeline
4、連接hiveserver2
beeline>!connect jdbc:hive2://nbdo3:10000
(nbdo3是hiveserver2所啟動的那臺主機名,端口默認是10000)
beeline> !connect jdbc:hive2://nbdo3:10000
Connecting to jdbc:hive2://nbdo3:10000
Enter username for jdbc:hive2://nbdo3:10000: hadoop
Enter password for jdbc:hive2://nbdo3:10000:?
Connected to: Apache Hive (version 2.1.0)
Driver: Hive JDBC (version 2.1.0)
17/03/11 12:34:29 [main]: WARN jdbc.HiveConnection: Request to set autoCommit to false; Hive does not support autoCommit=false.
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://nbdo3:10000>?
0: jdbc:hive2://nbdo3:10000> show databases;
+----------------+--+
| database_name ?|
+----------------+--+
| default ? ? ? ?|
| zengmg ? ? ? ? |
+----------------+--+
2 rows selected (0.495 seconds)
0: jdbc:hive2://nbdo3:10000>?
如果不配置第一步,會報錯:
?User: hadoop is not allowed to impersonate hadoop (state=,code=0)
意思是:hadoop用戶不允許訪問hadoop默認用戶。
-------------
更多的Java,Angular,Android,大數據,J2EE,Python,數據庫,Linux,Java架構師,:
http://www.cnblogs.com/zengmiaogen/p/7083694.html