失败:语义异常org.apache.hadoop.hive.ql.metadata.HiveException:java.lang.RuntimeExcept
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeExcept
我使用的是cdh 5.13.0环境
每当我尝试执行 hive cmd 时,它都会显示错误
失败:语义异常org.apache.hadoop.hive.ql.metadata.HiveException:java.lang.RuntimeException:无法实例化org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
我检查了配置单元-metastore.log,它显示
2018-05-02 06:15:53,225 错误 [main]: Datastore.Schema (Log4JLogger.java:error(125)) - 初始化数据库失败。
无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby:;databaseName=metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------
java.sql.SQLException: 创建数据库失败'metastore_db',详情见下一异常。
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明)
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明)
在 org.apache.derby.impl.jdbc.Util.seeNextException(来源不明)
在 org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(来源不明)
在 org.apache.derby.impl.jdbc.EmbedConnection。(未知来源)
在 org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(来源不明)
在 org.apache.derby.jdbc.InternalDriver.connect(来源不明)
在 org.apache.derby.jdbc.InternalDriver.connect(来源不明)
在 org.apache.derby.jdbc.AutoloadedDriver.connect(来源不明)
在 java.sql.DriverManager.getConnection(DriverManager.java:571)
在 java.sql.DriverManager.getConnection(DriverManager.java:187)
在 com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361)
在 com.jolbox.bonecp.BoneCP.(BoneCP.java:416)
在 com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120)
在 org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:501)
在 org.datanucleus.store.rdbms.RDBMSStoreManager.(RDBMSStoreManager.java:298)
在 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.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:631)
在 org.datanucleus.plugin.PluginManager.createExecutableExtension(PluginManager.java:301)
在 org.datanucleus.NucleusContext.createStoreManagerForProperties(NucleusContext.java:1187)
在 org.datanucleus.NucleusContext.initialise(NucleusContext.java:356)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:775)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202)
在 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)
在 javax.jdo.JDOHelper$16.run(JDOHelper.java:1965)
在 java.security.AccessController.doPrivileged(本机方法)
在 javax.jdo.JDOHelper.invoke(JDOHelper.java:1960)
在 javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166)
在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808)
在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701)
在 org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:418)
在 org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:447)
在 org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:342)
在 org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:298)
在 org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:73)
在 org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在 org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60)
在 org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:682)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:660)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:709)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:508)
在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:78)
在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6474)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6469)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6719)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6646)
在 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.run(RunJar.java:221)
在 org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: ERROR XJ041: Failed to create database 'metastore_db',详情见下一个异常。
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(来源不明)
... 61 更多
原因:错误 XBM0H:无法创建目录 /metastore_db。
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(来源不明)
在 java.security.AccessController.doPrivileged(本机方法)
在 org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(未知来源)
在 org.apache.derby.impl.services.monitor.BaseMonitor.bootService(来源不明)
在 org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(来源不明)
在 org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(来源不明)
在 org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(未知来源)
... 还有 58 个
org.datanucleus.exceptions.NucleusDataStoreException: 无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby:;databaseName=metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------
java.sql.SQLException: 创建数据库失败'metastore_db',详情见下一异常。
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明)
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明)
在 org.apache.derby.impl.jdbc.Util.seeNextException(来源不明)
在 org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(来源不明)
在 org.apache.derby.impl.jdbc.EmbedConnection。(未知来源)
在 org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(来源不明)
在 org.apache.derby.jdbc.InternalDriver.connect(来源不明)
在 org.apache.derby.jdbc.InternalDriver.connect(来源不明)
在 org.apache.derby.jdbc.AutoloadedDriver.connect(来源不明)
在 java.sql.DriverManager.getConnection(DriverManager.java:571)
在 java.sql.DriverManager.getConnection(DriverManager.java:187)
在 com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361)
在 com.jolbox.bonecp.BoneCP.(BoneCP.java:416)
在 com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120)
在 org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:501)
在 org.datanucleus.store.rdbms.RDBMSStoreManager.(RDBMSStoreManager.java:298)
在 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.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:631)
在 org.datanucleus.plugin.PluginManager.createExecutableExtension(PluginManager.java:301)
在 org.datanucleus.NucleusContext.createStoreManagerForProperties(NucleusContext.java:1187)
在 org.datanucleus.NucleusContext.initialise(NucleusContext.java:356)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:775)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333)
在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202)
在 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)
在 javax.jdo.JDOHelper$16.run(JDOHelper.java:1965)
在 java.security.AccessController.doPrivileged(本机方法)
在 javax.jdo.JDOHelper.invoke(JDOHelper.java:1960)
在 javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166)
在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808)
在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701)
在 org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:418)
在 org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:447)
在 org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:342)
在 org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:298)
在 org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:73)
在 org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在 org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60)
在 org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:682)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:660)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:709)
在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:508)
在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:78)
在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6474)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6469)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6719)
在 org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6646)
在 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.run(RunJar.java:221)
在 org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: ERROR XJ041: Failed to create database 'metastore_db',详情见下一个异常。
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(来源不明)
... 61 更多
原因:错误 XBM0H:无法创建目录 /metastore_db。
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.iapi.error.StandardException.newException(来源不明)
在 org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(来源不明)
在 java.security.AccessController.doPrivileged(本机方法)
在 org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(未知来源)
在 org.apache.derby.impl.services.monitor.BaseMonitor.bootService(来源不明)
在 org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(来源不明)
在 org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(来源不明)
在 org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(未知来源)
... 还有 58 个
我不知道该怎么办。
hive-metastore 服务器的状态已关闭且未关闭
原因 描述导致问题的原因。
在这种情况下,内存不足 (OOM) 错误是服务器没有足够的内存来启动 HiveMetaStore 服务的结果。
美国广播公司
客户端hive-site.xml中配置了HiveMetaStore服务,但是没有启动服务
例如:
/etc/gphd/hive-0.11.0_gphd_2_1_0_0/conf/hive-site.xml
<property>
<name>hive.metastore.uris
<value>thrift://hdw1.viadea.com:9083
</property>
但是在 hdw1 上:
-bash-4.1$ service hive-metastore status
hive-metastore dead but pid file exists
通过观察hive-metastore.log,可以看出服务启动失败是内存不足(OOM)错误,如下例所示:
14/04/07 16:43:13 警告 conf.HiveConf:已弃用:配置 属性 hive.metastore.local 不再有任何效果。如果要连接到远程 Metastore,请确保为 hive.metastore.uris 提供有效值。
警告:org.apache.hadoop.metrics.jvm.EventCounter 已弃用。请在所有 log4j.properties 文件中使用 org.apache.hadoop.log.metrics.EventCounter。
库初始化失败 - 无法分配文件描述符 table - 内存不足
程序
要解决此问题,请按照以下步骤操作:
1、理解为什么HiveMetaStore服务没有启动。在这种情况下,增加服务器的物理内存。
2.然后使用root用户手动启动HiveMetaStore服务。
service hive-metastore start
我使用的是cdh 5.13.0环境 每当我尝试执行 hive cmd 时,它都会显示错误
失败:语义异常org.apache.hadoop.hive.ql.metadata.HiveException:java.lang.RuntimeException:无法实例化org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
我检查了配置单元-metastore.log,它显示
2018-05-02 06:15:53,225 错误 [main]: Datastore.Schema (Log4JLogger.java:error(125)) - 初始化数据库失败。 无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby:;databaseName=metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------ java.sql.SQLException: 创建数据库失败'metastore_db',详情见下一异常。 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明) 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明) 在 org.apache.derby.impl.jdbc.Util.seeNextException(来源不明) 在 org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(来源不明) 在 org.apache.derby.impl.jdbc.EmbedConnection。(未知来源) 在 org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(来源不明) 在 org.apache.derby.jdbc.InternalDriver.connect(来源不明) 在 org.apache.derby.jdbc.InternalDriver.connect(来源不明) 在 org.apache.derby.jdbc.AutoloadedDriver.connect(来源不明) 在 java.sql.DriverManager.getConnection(DriverManager.java:571) 在 java.sql.DriverManager.getConnection(DriverManager.java:187) 在 com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361) 在 com.jolbox.bonecp.BoneCP.(BoneCP.java:416) 在 com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120) 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:501) 在 org.datanucleus.store.rdbms.RDBMSStoreManager.(RDBMSStoreManager.java:298) 在 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.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:631) 在 org.datanucleus.plugin.PluginManager.createExecutableExtension(PluginManager.java:301) 在 org.datanucleus.NucleusContext.createStoreManagerForProperties(NucleusContext.java:1187) 在 org.datanucleus.NucleusContext.initialise(NucleusContext.java:356) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:775) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) 在 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) 在 javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) 在 java.security.AccessController.doPrivileged(本机方法) 在 javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) 在 javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) 在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) 在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) 在 org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:418) 在 org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:447) 在 org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:342) 在 org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:298) 在 org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:73) 在 org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133) 在 org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) 在 org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:682) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:660) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:709) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:508) 在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:78) 在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6474) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6469) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6719) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6646) 在 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.run(RunJar.java:221) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:136) Caused by: ERROR XJ041: Failed to create database 'metastore_db',详情见下一个异常。 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(来源不明) ... 61 更多 原因:错误 XBM0H:无法创建目录 /metastore_db。 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(来源不明) 在 java.security.AccessController.doPrivileged(本机方法) 在 org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(未知来源) 在 org.apache.derby.impl.services.monitor.BaseMonitor.bootService(来源不明) 在 org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(来源不明) 在 org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(来源不明) 在 org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(未知来源)
... 还有 58 个
org.datanucleus.exceptions.NucleusDataStoreException: 无法打开到给定数据库的测试连接。 JDBC url = jdbc:derby:;databaseName=metastore_db;create=true, username=APP.终止连接池(如果您希望在应用程序之后启动数据库,请将 lazyInit 设置为 true)。原始异常:------ java.sql.SQLException: 创建数据库失败'metastore_db',详情见下一异常。 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明) 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(来源不明) 在 org.apache.derby.impl.jdbc.Util.seeNextException(来源不明) 在 org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(来源不明) 在 org.apache.derby.impl.jdbc.EmbedConnection。(未知来源) 在 org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(来源不明) 在 org.apache.derby.jdbc.InternalDriver.connect(来源不明) 在 org.apache.derby.jdbc.InternalDriver.connect(来源不明) 在 org.apache.derby.jdbc.AutoloadedDriver.connect(来源不明) 在 java.sql.DriverManager.getConnection(DriverManager.java:571) 在 java.sql.DriverManager.getConnection(DriverManager.java:187) 在 com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361) 在 com.jolbox.bonecp.BoneCP.(BoneCP.java:416) 在 com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120) 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:501) 在 org.datanucleus.store.rdbms.RDBMSStoreManager.(RDBMSStoreManager.java:298) 在 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.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:631) 在 org.datanucleus.plugin.PluginManager.createExecutableExtension(PluginManager.java:301) 在 org.datanucleus.NucleusContext.createStoreManagerForProperties(NucleusContext.java:1187) 在 org.datanucleus.NucleusContext.initialise(NucleusContext.java:356) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:775) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) 在 org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) 在 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) 在 javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) 在 java.security.AccessController.doPrivileged(本机方法) 在 javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) 在 javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) 在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) 在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) 在 org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:418) 在 org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:447) 在 org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:342) 在 org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:298) 在 org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:73) 在 org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133) 在 org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) 在 org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:682) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:660) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:709) 在 org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:508) 在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:78) 在 org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6474) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6469) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6719) 在 org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6646) 在 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.run(RunJar.java:221) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:136) Caused by: ERROR XJ041: Failed to create database 'metastore_db',详情见下一个异常。 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(来源不明) ... 61 更多 原因:错误 XBM0H:无法创建目录 /metastore_db。 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.iapi.error.StandardException.newException(来源不明) 在 org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(来源不明) 在 java.security.AccessController.doPrivileged(本机方法) 在 org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(未知来源) 在 org.apache.derby.impl.services.monitor.BaseMonitor.bootService(来源不明) 在 org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(来源不明) 在 org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(来源不明) 在 org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(未知来源)
... 还有 58 个
我不知道该怎么办。 hive-metastore 服务器的状态已关闭且未关闭
原因 描述导致问题的原因。 在这种情况下,内存不足 (OOM) 错误是服务器没有足够的内存来启动 HiveMetaStore 服务的结果。
美国广播公司
客户端hive-site.xml中配置了HiveMetaStore服务,但是没有启动服务
例如:
/etc/gphd/hive-0.11.0_gphd_2_1_0_0/conf/hive-site.xml
<property>
<name>hive.metastore.uris
<value>thrift://hdw1.viadea.com:9083
</property>
但是在 hdw1 上:
-bash-4.1$ service hive-metastore status
hive-metastore dead but pid file exists
通过观察hive-metastore.log,可以看出服务启动失败是内存不足(OOM)错误,如下例所示:
14/04/07 16:43:13 警告 conf.HiveConf:已弃用:配置 属性 hive.metastore.local 不再有任何效果。如果要连接到远程 Metastore,请确保为 hive.metastore.uris 提供有效值。 警告:org.apache.hadoop.metrics.jvm.EventCounter 已弃用。请在所有 log4j.properties 文件中使用 org.apache.hadoop.log.metrics.EventCounter。 库初始化失败 - 无法分配文件描述符 table - 内存不足
程序 要解决此问题,请按照以下步骤操作: 1、理解为什么HiveMetaStore服务没有启动。在这种情况下,增加服务器的物理内存。 2.然后使用root用户手动启动HiveMetaStore服务。
service hive-metastore start