<property>
<name>hive.server2.thrift.port</name>
<value></value>
<description>Port number of HiveServer2 Thrift interface when hive.server2.transport.mode is 'binary'.</description>
</property>
<property> <name>hive.server2.thrift.bind.host</name> <value>127.0.0.1</value> <description>Bind host on which to run the HiveServer2 Thrift service.</description> </property>
<property> <name>hive.server2.enable.doAs</name> <value>false</value> <description> Setting this property to true will have HiveServer2 execute Hive operations as the user making the calls to it. 如果为True:Hive Server会以提交用户的身份去执行语句 如果为False:会以hive server daemon的admin user来执行语句
</description> </property>
启动Thrift服务:hive --service hiveserver2
测试Thrift服务:
新开一个命令行窗口,执行beeline命令:
shuwendeMBP:~ shuwen$ beeline
Beeline version 1.2.1.spark2 by Apache Hive
beeline> !connect jdbc:hive2://127.0.0.1:10000
Connecting to jdbc:hive2://127.0.0.1:10000
Enter username for jdbc:hive2://127.0.0.1:10000: shuwen
Enter password for jdbc:hive2://127.0.0.1:10000: ******
log4j:WARN No appenders could be found for logger (org.apache.hive.jdbc.Utils).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Connected to: Apache Hive (version 1.2.2)
Driver: Hive JDBC (version 1.2.1.spark2)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://127.0.0.1:10000> show databases;
+----------------+--+
| database_name |
+----------------+--+
| db_2_1 |
| default |
| netuml |
+----------------+--+
3 rows selected (1.941 seconds)
ls: /usr/local/share/spark-2.0.0-bin-hadoop2.7/lib/spark-assembly-*.jar: No such file or directory 发现主要原因是:在/<PathToHive>/bin/hive文件中,有这样的命令:加载spark中相关的JAR包
if [[ -n "$SPARK_HOME" ]]
then
sparkAssemblyPath=`ls ${SPARK_HOME}/lib/spark-assembly-*.jar`
CLASSPATH="${CLASSPATH}:${sparkAssemblyPath}"
fi