今天在启动hive时出现了一个错误:
Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
解决方法如下:
- 检查一下java的驱动jar包是否导入hive 的
conf/
目录下, 注意在官网上下载的mysql-connector-java-5.1.48.tar.gz
是个压缩包, 我们需要解压这个压缩包, 将里面的mysql-connector-java-5.1.48-bin.jar
复制到hive 的conf
目录下, 而不是将tar.gz
这个压缩包复制过去
如果是由于jar包出现的错误, 在启动时一大堆错误里, 还会有一个提示驱动错误:
Attempt to invoke the "BONECP" plugin to create a ConnectionPool gave an error : The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.
如果也有这个错误, 那基本上就是jar包的问题
- 检查自己的
hive-site.xml
配置文件配置的MySQL地址, 用户名和密码是否正确, 还有在hive.env.sh
中是否制订了配置文件的目录