`

hive创建表是报错: Specified key was too long; max key length is 767 bytes

    博客分类:
  • hive
阅读更多

今天在hive客户端创建表时报错,具体操作如下

 

hive> create table test2(id string);

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:javax.jdo.JDODataStoreException: An exception was thrown while adding/validating class(es) : Specified key was too long; max key length is 767 bytes

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

        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)

 

 

此错误解决方法:修改mysql 数据库的编码为latin1即可

 

 

mysql> alter database hive character set latin1;    

Query OK, 1 row affected (0.54 sec)

 

mysql> show create database hive;

+-----------+----------------------------------------------------------------------+

| Database  | Create Database                                                      |

+-----------+----------------------------------------------------------------------+

| olap_hive | CREATE DATABASE `hive` /*!40100 DEFAULT CHARACTER SET latin1 */ |

+-----------+----------------------------------------------------------------------+

1 row in set (0.17 sec)

 

 

然后再执行创建表则能正常执行:

hive> create table test2(id string);

OK

Time taken: 3.307 seconds

 

hive> show tables; 

OK

test2

Time taken: 0.061 seconds, Fetched: 1 row(s)

 

分享到:
评论

相关推荐

    hive on tez 常见报错问题收集

    在大数据处理领域,Hive作为一个基于Hadoop的数据仓库工具,被广泛用于结构化数据的查询、分析和管理。然而,在实际操作中,我们经常会遇到一些常见的错误,特别是当Hive运行在Tez引擎上时。这里我们将深入探讨五个...

    Could not resolve dependencies for project org.apache.hive:hive-exec:jar:2.3.0:

    hive 开发UDF 使用maven工程 引发jar包缺失 hive 开发UDF 使用maven工程 引发jar包缺失

    hive的一些报错及解决方法

    ### Hive的一些报错及解决方法 #### 一、Hive连接报错 在更换网络接口卡后重新启动服务时,可能会遇到Hive连接失败的问题。此类问题通常与元数据存储中的异常有关,例如存在多个版本的元数据或者端口被其他服务...

    Hive Beeline连接报错:Could not open client transport with JDBC Uri: jdbc:hive2://hcmaster:10000/default

    在使用Hive的Beeline客户端进行连接时,可能会遇到错误提示"Could not open client transport with JDBC Uri: jdbc:hive2://hcmaster:10000/default"。这个错误通常意味着Beeline无法通过JDBC URL成功建立到Hive ...

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

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

    hive外部表创建

    ### Hive外部表创建详解 #### 一、引言 在大数据处理领域,Hive作为一款广泛使用的数据仓库工具,能够高效地对存储在Hadoop文件系统中的数据进行查询与管理。其中,外部表的创建是Hive使用过程中的一个重要概念。...

    大数据安全-kerberos技术-hive安装包,hive版本:apache-hive-3.1.3-bin.tar.gz

    3. **配置Hive服务**:修改`hive-site.xml`配置文件,添加Kerberos相关属性,如`hive.server2.authentication`设为`KERBEROS`,`hive.metastore.kerberos.principal`和`hive.server2.kerberos.principal`分别设定为...

    hive 创建表语法.docx

    Hive 创建表语法是 Hive 中的一种基本操作,用于创建 Hive 表。Hive 表可以是内部表,也可以是外部表。下面将详细介绍 Hive 创建表语法的使用。 EXTERNAL 关键字 在 Hive 中,使用 EXTERNAL 关键字可以创建外部表...

    hive建表报错.md

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

    Spark不能使用hive自定义函数.doc

    4. **配置 Spark Session**:在创建 SparkSession 时,可以通过 `enableHiveSupport()` 方法启用对 Hive 的支持,这样可以确保 Spark 能够访问 Hive 元数据和服务,从而能够使用 Hive UDF。 ```java SparkSession ...

    DBeaver链接hive驱动包下载: hive-jdbc-uber-2.6.5.0-292.jar

    《DBeaver与Hive连接:hive-jdbc-uber-2.6.5.0-292.jar驱动详解》 在大数据处理领域,Hive作为一个基于Hadoop的数据仓库工具,广泛用于数据查询和分析。而DBeaver,作为一款跨平台的数据库管理工具,以其用户友好的...

    kettle执行hive相关ktr时报错: database type with plugin id [HIVE2] couldn't be found!

    java代码执行hive相关ktr时报错: database type with plugin id [HIVE2] couldn't be found! 解决:kettle-core-7.1.0.0-12.jar适配hive后的包。具体步骤请查看...

    SparkSQL通过Hive创建DataFrame

    SparkSQL通过Hive创建DataFrame问题分析 问题一 Caused by: org.apache.spark.sql.catalyst.analysis.NoSuchTableException: Table or view 'stu' not found in database 'default'; 分析:确实没有临时表View,...

    Hive表生成工具,Hive表生成工具Hive表生成工具

    Hive表生成工具,Hive表生成工具Hive表生成工具

    征服Hive小文件之困:策略、方法与实践

    Hive是一种基于Hadoop的数据仓库工具,它提供了一种SQL-like的查询语言,称为HiveQL,用于查询和分析存储在Hadoop分布式文件系统(HDFS)或Amazon S3中的大规模数据集。Hive允许用户映射结构化数据文件为数据库表,...

    13-Hive基本操作1

    `CREATE TABLE`用于创建Hive中的表。你可以指定表的列名、数据类型以及存储格式。例如,`CREATE TABLE my_table (col1 string, col2 int)`将创建一个名为my_table的表,包含两列col1和col2。 5. **修改表**: ...

    Hive内部表合并小文件Java程序

    在大数据处理领域,Hive作为一个基于Hadoop的数据仓库工具,被广泛用于存储和查询大规模数据集。然而,Hive在处理大量小文件时可能会遇到性能问题,因为HDFS(Hadoop分布式文件系统)对小文件的管理效率较低。为了...

    hive-jdbc-1.1.0-cdh5.4.5-standalone.jar

    hive-jdbc-1.1.0-cdh5.4.5-standalone.jar Caused by: java.sql.SQLException: java.lang.ClassNotFoundException: org.apache.hive.jdbc.HiveDriver at com.trs.gateway.commons.hive.HiveFeature.getConnection...

    hive笔记,亲测可用,绝对的

    ### Hive概述 Hive是一种基于Hadoop的数据仓库工具,它主要负责将结构化的数据文件映射成表格形式,并提供了一种类似于SQL的查询语言——HQL(Hive Query Language),以便用户能够更方便地处理存储在Hadoop分布式...

    修改hive表分区名称

    ### 修改Hive表分区名称的方法 在大数据处理领域中,Apache Hive是一款广泛使用的数据仓库工具,它能够将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能,使得用户能够通过简单的SQL语句来处理存储在...

Global site tag (gtag.js) - Google Analytics