Java Apache配置单元:无法实例化org.Apache.hadoop.Hive.metastore.HiveMetaStoreClient

Java Apache配置单元:无法实例化org.Apache.hadoop.Hive.metastore.HiveMetaStoreClient,java,apache,hadoop,hive,Java,Apache,Hadoop,Hive,我正在尝试安装Apache Hive,我将Hive_HOME和HADOOP_HOME插入到Hive_config.sh中,并将一些Hive jar复制到$HADOOP_HOME/lib中 但当我尝试使用hive命令启动它时,会出现以下错误: Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.m

我正在尝试安装Apache Hive,我将Hive_HOME和HADOOP_HOME插入到Hive_config.sh中,并将一些Hive jar复制到$HADOOP_HOME/lib中 但当我尝试使用
hive
命令启动它时,会出现以下错误:

Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:346)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:681)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:625)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
Caused by: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1412)
at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:62)
at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:72)
at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:2453)
at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:2465)
at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:340)
... 7 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1410)
... 12 more
Caused by: javax.jdo.JDOFatalInternalException: Error creating transactional connection factory
NestedThrowables:
java.lang.reflect.InvocationTargetException
etc ...
线程“main”java.lang.RuntimeException中的异常:java.lang.RuntimeException:无法实例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient 位于org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:346) 位于org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:681) 位于org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:625) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:606) 位于org.apache.hadoop.util.RunJar.main(RunJar.java:156) 原因:java.lang.RuntimeException:无法实例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient 位于org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1412) 位于org.apache.hadoop.hive.metastore.RetryingMetaStoreClient。(RetryingMetaStoreClient.java:62) 位于org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:72) 位于org.apache.hadoop.hive.ql.metadata.hive.createMetaStoreClient(hive.java:2453) 位于org.apache.hadoop.hive.ql.metadata.hive.getMSC(hive.java:2465) 位于org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:340) ... 还有7个 原因:java.lang.reflect.InvocationTargetException 位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) 位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 位于java.lang.reflect.Constructor.newInstance(Constructor.java:526) 位于org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1410) ... 还有12个 原因:javax.jdo.JDOFatalInternalException:创建事务连接工厂时出错 嵌套的工作流表: java.lang.reflect.InvocationTargetException 等
请帮忙

您的hadoop应该处于运行状态。 卸载下载的配置单元并授予该目录的权限。转到配置单元/conf目录。将hive-env.sh.template文件设置为hive-env.sh,将hive-default.xml.template文件设置为hive-site.xml。打开hive-evn.sh并在hive-env.sh和HADOOP_HOME中设置JAVA_HOME,同时设置配置单元路径

export HIVE_HOME=/usr/local/hive
然后打开蜂箱终端

hive
默认情况下,配置单元接受Derby数据库,如果它在创建表时给出metastore错误,请转到metastore/metastore_db并删除*.lck文件

在.bashrc或.bash\u配置文件中添加JAVA\u HOME、HADOOP\u HOME、HIVE\u HOME

$cd ~
$vi .bashrc

paste following to the end of the file



#Hadoop variables
export JAVA_HOME=/usr/lib/jvm/jdk/
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
###end of paste

如果您是CDH用户,则应使用正确的参数构建齐柏林飞艇。这些参数将解决CDH 5.3.3的问题:

mvn clean install -Pspark-1.4 -Phadoop-2.4 -DskipTests -Dspark.version=1.4.0 -Dhadoop.version=2.5.0-cdh5.3.3 -Dhive.hive.version=0.13.1-cdh5.3.3

为了解决上述问题,启动hive metastore服务对我来说很有效

   $ hive --service metastore
启动metastore服务时的cloudera参考文档:

蜂巢——服务元存储&


此命令将启动元存储。

无需启动元存储,因为运行hive cli的服务也会执行相同的操作,只需确保您在从属性实例化hive元存储的同一目录执行hive命令,它将仅创建数据库而不创建架构。尝试在MySQL中创建配置单元元存储所需的架构

cd$HIVE\u HOME/scripts/metastore/upgrade/mysql/ <使用命令(mysql-u root-p)登录mysql,其中root是用户名,将询问密码>

mysql> use metastore;
 mysql> source hive-schema-<your_version>.mysql.sql;
mysql>使用metastore;
mysql>源配置单元模式-.mysql.sql;
e、 g source-hive-schema-2.1.0.mysql.sql; 然后使用以下命令重新启动配置单元元存储过程:

(配置单元--服务元存储)
希望这能解决问题

非常感谢您的帮助,我的错误是我没有将hive的jar添加到HADOOP_CLASSPATH:export HADOOP_CLASSPATH=/home/elyes/Cassandra/apache-Cassandra-2.0.6/lib/Cassandra-driver-core-1.0.0-rc1-sources.jar:/home/elyes/hive/lib/*.jar