标签:
今天在使用 hive --service hiveserver 命令启动 hiveserver 时出错了,hive版本1.2.0 ,错误信息如下:
-bash-4.1$ hive --service hiveserver -p 10002 &
Starting Hive Thrift Server
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.hadoop.hive.service.HiveServer
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at org.apache.hadoop.util.RunJar.run(RunJar.java:214)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
可以使用 $HIVE_HOME/bin/hiveserver2 或者 $HIVE_HOME/bin/hive --service hiveserver2 命令来启动HiveServer2
hiveserver 和 hiveserver2 在使用JDBC连接方面有两个不同的地方:
1.驱动类:org.apache.hadoop.hive.jdbc.HiveDriver --> org.apache.hive.jdbc.HiveDriver
2.URL:jdbc:hive://localhost:10000/default --> jdbc:hive2://localhost:10000/default
另外,使用hive jdbc时需要导入hive的jdbc驱动包,如果用Maven,那就请加入依赖
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>1.2.0</version>
</dependency>
HiveServer 与 HiveServer2
标签:
原文地址:http://my.oschina.net/zc741520/blog/496877