`

启动hive命令报错 “Metastore contains multiple versions”

    博客分类:
  • hive
阅读更多

错误日志:

 Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
      at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)
      at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:672)
      at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:616)
      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: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
     at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1449)
     at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:63)
     at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:73)
     at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:2661)
     at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:2680)
     at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:425)
     ... 8 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:1447)
     ... 13 more
 Caused by: MetaException(message:Metastore contains multiple versions)
     at org.apache.hadoop.hive.metastore.ObjectStore.getMSchemaVersion(ObjectStore.java:6643)
     at org.apache.hadoop.hive.metastore.ObjectStore.getMetaStoreSchemaVersion(ObjectStore.java:6605)
     at org.apache.hadoop.hive.metastore.ObjectStore.checkSchema(ObjectStore.java:6564)
     at org.apache.hadoop.hive.metastore.ObjectStore.verifySchema(ObjectStore.java:6552)
     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:98)
     at com.sun.proxy.$Proxy5.verifySchema(Unknown Source)
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:539)
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:587)
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:429)
     at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:66)
     at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:72)
     at org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5554)
     at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:178)
     at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:73)
     ... 18 more
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45

解决方案:

因为hive metastore存储在mysql中,所以登录mysql,use hive所使用的DB,然后 查询下VERSION表 
mysql> select * from VERSION;

+——–+—————-+——————+ 
| VER_ID | SCHEMA_VERSION | VERSION_COMMENT | 
+——–+—————-+——————+ 
| 1 | 0.14.0 | Set by MetaStore | 
| 2 | 0.14.0 | Set by MetaStore | 
| 3 | 0.14.0 | Set by MetaStore | 
| 4 | 0.14.0 | Set by MetaStore | 
| 5 | 0.14.0 | Set by MetaStore | 
| 6 | 0.14.0 | Set by MetaStore | 
+——–+—————-+——————+

保留第一条记录,其他记录全部删除

 delete from VERSION where VER_ID !=1 
  • 1

出现这类异常问题原因

hive 是不支持并发的,估计我同事 不小心启动多个hive,也可能是网络问题,反正很诡异

 
1
2
分享到:
评论

相关推荐

    hive的一些报错及解决方法

    - **现象**:启动时提示`MetaException(message:Metastore contains multiple versions (2))`,表示Hive元数据存在多版本的情况。 - **解决步骤**: - 使用`DEBUG`级别查看详细的错误信息,以便更准确地定位问题...

    hive metastore java api使用

    hive metastore hive metastore是hive的元数据管理服务,实际应用中很多第三方框架需要访问metastore服务,如spark,impala等。同样hive metastore也提供了java接口。 使用 import org.apache.hadoop.hive.conf....

    hive-metastore-3.1.2.jar

    hive-metastore-3.1.2.jar

    hive systemctl启停hiveserver2和metastore服务.pdf

    例如,启动Metastore服务会使用`nohup`命令在后台运行`/usr/local/hive/bin/hive --service metastore`,而停止服务则通过`ps`命令找到对应进程并使用`kill`命令终止。 接着,为了使这些操作更加自动化和方便,我们...

    Hive metastore 使用达梦数据库存储元数据

    《Hive metastore 使用达梦数据库存储元数据详解》 在大数据处理领域,Hive作为一个分布式数据仓库工具,被广泛用于存储和管理大规模结构化数据。Hive的元数据是其核心组成部分,它包含了表、分区、列等信息,使得...

    hive建表报错.md

    今天更新hive版本的时候,把关联的数据库删掉了,重新生成,之后出现MetaException(message:An exception was thrown while adding/validating class(es) : Column length too big for column 'PARAM_VALUE' (max = ...

    hive on tez 常见报错问题收集

    这里我们将深入探讨五个在Hive on Tez中常见的报错问题及其解决方案。 1. 错误一:Failing because I am unlikely to write too。 这个问题是由于Hive中的一个已知bug,具体问题可以在Apache JIRA的HIVE-16398中...

    hive开启权限后不能创建数据库问题

    背景:由于Hive需要开启权限管理,安装网上教程,开启权限配置,重启集群后。 使用root用户登录,进入Hive命令行界面。 执行 create database test; 发现报错: Authorization failed:No privilege 'Create' found ...

    bde2020-hive-metastore-postgresql.tar

    bde2020_hive-metastore-postgresql.tar

    PyPI 官网下载 | hive_metastore_client-1.0.0-py3-none-any.whl

    安装命令通常是`pip install hive_metastore_client-1.0.0-py3-none-any.whl`,这将把Hive Metastore的客户端库添加到Python环境中,使Python程序能够连接并操作Hive Metastore。 标签中包含了“hive”、“hadoop”...

    hive远程连接详细配置

    在这个配置文件中,我们可以看到两个重要的参数:`hive.metastore.local` 和 `hive.metastore.uris`。 * `hive.metastore.local` 参数控制是否在 Hive 客户端 JVM 中打开一个新的 metastore 服务器。如果设置为 `...

    hdfs开启高可用+hive报错

    - 然而,当尝试启动Hive服务时遇到了上述错误。 - 问题的根本原因在于Hive仍然尝试访问原本的Active NameNode(即处于Standby状态的master01),而不是当前的Active NameNode(master03)。 #### 五、解决方案 ...

    hive-metastore-2.3.6.jar

    在hive java api的时候 : 需要导入hive运行所需的jar包,导入jar包有两种方式可实现 1.使用maven依赖直接修改配置文件,以下为配置内容:(不推荐,会下载额外很多无用包,而且时间很长在1小时左右) 2.挑选必须...

    standalone-hive-metastore

    独立的Hive Metastore 该项目可在本地运行Hive Metastore,或将其嵌入到容器中。 尽管是公开的,但该项目目前尚未记录,并且可能仍承载某些基础结构特定配置。 该项目的灵感来自和多亏了他

    Hive基本命令整理

    Hive基本命令整理 作为大数据处理的重要工具,Hive 提供了许多实用的命令来帮助开发人员高效地处理和分析数据。下面是 Hive 中的一些基本命令整理,涵盖了表的创建、加载数据、查看结构信息、更新表名、添加新列、...

    hive_windows可执行文件

    用户需要将解压后的文件覆盖到已有的Hive安装目录的bin子目录中,以确保Windows系统能正确执行Hive命令。 3. **文件解析**: - **beeline**:这是一个基于JDBC的Hive客户端,提供了更现代的交互式SQL查询体验,...

    详细调研hivemetastore管理机制.zip

    《深入理解Hive Metastore管理机制》 在大数据处理领域,Hive作为一个基于Hadoop的数据仓库工具,因其易用性和高效性而被广泛应用。其中,Hive Metastore是Hive的核心组件之一,它负责管理和存储元数据,是理解和...

    Apache Hive(hive-standalone-metastore-3.0.0-bin.tar.gz)

    Apache Hive(hive-standalone-metastore-3.0.0-bin.tar.gz、hive-standalone-metastore-3.0.0-src.tar.gz)是一种分布式容错数据仓库系统,支持大规模分析,并使用 SQL 促进读取、写入和管理驻留在分布式存储中的 ...

    hive相关jar包

    2. **Hive Metastore**:这部分jar包用于存储Hive的元数据,包括表结构、分区信息、列类型等。元数据可以存储在本地MySQL、PostgreSQL或者远程Thrift服务器上。 3. **Hive SerDes(Serialization/Deserialization)...

    Hive基本操作命令大全

    Hive基本操作命令大全 Hive是一个基于Hadoop的数据仓库工具,可以使用SQL语言来查询和管理大规模数据。本文档将详细介绍Hive的基本操作命令,从创建表、加载数据、查询数据到数据管理等方面进行整理。 创建表 ...

Global site tag (gtag.js) - Google Analytics