[root@node1 ~]# hivewhich: no hbase in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/app/jdk1.7.0_79/bin:/opt/app/zookeeper-3.4.9/bin:/opt/app/hadoop-2.7.3/bin:/opt/app/hadoop-2.7.3/sbin:/opt/app/hive-2.1.1/bin:/root/bin)SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/app/hive-2.1.1/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found binding in [jar:file:/opt/app/hadoop-2.7.3/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]Logging initialized using configuration in jar:file:/opt/app/hive-2.1.1/lib/hive-common-2.1.1.jar!/hive-log4j2.properties Async: trueException in thread "main" java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient ???at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:591) ???at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:531) ???at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:705) ???at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:641) ???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.run(RunJar.java:221) ???at org.apache.hadoop.util.RunJar.main(RunJar.java:136)Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient ???at org.apache.hadoop.hive.ql.metadata.Hive.registerAllFunctionsOnce(Hive.java:226) ???at org.apache.hadoop.hive.ql.metadata.Hive.<init>(Hive.java:366) ???at org.apache.hadoop.hive.ql.metadata.Hive.create(Hive.java:310) ???at org.apache.hadoop.hive.ql.metadata.Hive.getInternal(Hive.java:290) ???at org.apache.hadoop.hive.ql.metadata.Hive.get(Hive.java:266) ???at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:558) ???... 9 moreCaused by: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient ???at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1654) ???at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:80) ???at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:130) ???at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:101) ???at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3367) ???at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3406) ???at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3386) ???at org.apache.hadoop.hive.ql.metadata.Hive.getAllFunctions(Hive.java:3640) ???at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:236) ???at org.apache.hadoop.hive.ql.metadata.Hive.registerAllFunctionsOnce(Hive.java:221) ???... 14 moreCaused 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:1652) ???... 23 moreCaused by: MetaException(message:Version information not found in metastore. ) ???at org.apache.hadoop.hive.metastore.ObjectStore.checkSchema(ObjectStore.java:7753) ???at org.apache.hadoop.hive.metastore.ObjectStore.verifySchema(ObjectStore.java:7731) ???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.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:101) ???at com.sun.proxy.$Proxy20.verifySchema(Unknown Source) ???at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:565) ???at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:626) ???at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:416) ???at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:78) ???at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84) ???at org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6490) ???at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:238) ???at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:70) ???... 28 more[root@node1 ~]#
百度了一下,众说纷纭,还是没有解决我的问题。先记录一下。
2017.3.11
问题找到了,原来Hive2需要hive元数据库初始化
schematool -dbType mysql -initSchema
[root@node1 ~]# schematool --helpwhich: no hbase in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/app/jdk1.7.0_79/bin:/opt/app/zookeeper-3.4.9/bin:/opt/app/hadoop-2.7.3/bin:/opt/app/hadoop-2.7.3/sbin:/opt/app/hive-2.1.1/bin:/root/bin)SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/app/hive-2.1.1/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found binding in [jar:file:/opt/app/hadoop-2.7.3/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]usage: schemaTool -dbOpts <databaseOpts> ????????????Backend DB specific options -dbType <databaseType> ????????????Metastore database type -dryRun ???????????????????????????list SQL scripts (no execute) -help ?????????????????????????????print this message -info ?????????????????????????????Show config and schema details -initSchema ???????????????????????Schema initialization -initSchemaTo <initTo> ????????????Schema initialization to a version -passWord <password> ??????????????Override config file password -upgradeSchema ????????????????????Schema upgrade -upgradeSchemaFrom <upgradeFrom> ??Schema upgrade from a version -userName <user> ??????????????????Override config file user name -verbose ??????????????????????????only print SQL statements[root@node1 ~]# schematool -dbType mysql -initSchemawhich: no hbase in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/app/jdk1.7.0_79/bin:/opt/app/zookeeper-3.4.9/bin:/opt/app/hadoop-2.7.3/bin:/opt/app/hadoop-2.7.3/sbin:/opt/app/hive-2.1.1/bin:/root/bin)SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/app/hive-2.1.1/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found binding in [jar:file:/opt/app/hadoop-2.7.3/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]Metastore connection URL: ???jdbc:mysql://node1:3306/hive?createDatabaseIfNotExist=trueMetastore Connection Driver : ???com.mysql.jdbc.DriverMetastore connection User: ??rootStarting metastore schema initialization to 2.1.0Initialization script hive-schema-2.1.0.mysql.sqlInitialization script completedschemaTool completed
元数据库初始化完成后,就可以进入hive了
[root@node1 ~]# hivewhich: no hbase in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/app/jdk1.7.0_79/bin:/opt/app/zookeeper-3.4.9/bin:/opt/app/hadoop-2.7.3/bin:/opt/app/hadoop-2.7.3/sbin:/opt/app/hive-2.1.1/bin:/root/bin)SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/app/hive-2.1.1/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found binding in [jar:file:/opt/app/hadoop-2.7.3/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]Logging initialized using configuration in jar:file:/opt/app/hive-2.1.1/lib/hive-common-2.1.1.jar!/hive-log4j2.properties Async: trueHive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. tez, spark) or using Hive 1.X releases.hive>
Hive2:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
原文地址:http://www.cnblogs.com/cxhfuujust/p/7784308.html