在进行Hive集成Mysql作为元数据过程中。做全然部安装配置工作后。进入到hive模式,运行show databases。运行正常,接着运行show tables;时却报错。

关键错误信息例如以下:

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

详细操作信息例如以下:

hive> show databases;
OK
default
Time taken: 8.638 seconds

hive> show tables;

FAILED: Error in metadata: MetaException(message:Got exception: org.apache.hadoop.hive.metastore.api.MetaException 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)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
        at com.mysql.jdbc.Util.getInstance(Util.java:386)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4098)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4030)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2671)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2621)
        at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:842)
        at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:681)
        at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
        at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
        at org.datanucleus.store.rdbms.table.AbstractTable.executeDdlStatement(AbstractTable.java:730)
        at org.datanucleus.store.rdbms.table.AbstractTable.executeDdlStatementList(AbstractTable.java:681)
        at org.datanucleus.store.rdbms.table.AbstractTable.create(AbstractTable.java:402)
        at org.datanucleus.store.rdbms.table.AbstractTable.exists(AbstractTable.java:458)
        at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.performTablesValidation(RDBMSStoreManager.java:2689)
        at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.addClassTablesAndValidate(RDBMSStoreManager.java:2503)
        at org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.run(RDBMSStoreManager.java:2148)
        at org.datanucleus.store.rdbms.AbstractSchemaTransaction.execute(AbstractSchemaTransaction.java:113)
        at org.datanucleus.store.rdbms.RDBMSStoreManager.addClasses(RDBMSStoreManager.java:986)
        at org.datanucleus.store.rdbms.RDBMSStoreManager.addClasses(RDBMSStoreManager.java:952)
        at org.datanucleus.store.AbstractStoreManager.addClass(AbstractStoreManager.java:919)
        at org.datanucleus.store.mapped.MappedStoreManager.getDatastoreClass(MappedStoreManager.java:356)
        at org.datanucleus.store.rdbms.query.legacy.ExtentHelper.getExtent(ExtentHelper.java:48)
        at org.datanucleus.store.rdbms.RDBMSStoreManager.getExtent(RDBMSStoreManager.java:1332)
        at org.datanucleus.ObjectManagerImpl.getExtent(ObjectManagerImpl.java:4149)
        at org.datanucleus.store.rdbms.query.legacy.JDOQLQueryCompiler.compileCandidates(JDOQLQueryCompiler.java:411)
        at org.datanucleus.store.rdbms.query.legacy.QueryCompiler.executionCompile(QueryCompiler.java:312)
        at org.datanucleus.store.rdbms.query.legacy.JDOQLQueryCompiler.compile(JDOQLQueryCompiler.java:225)
        at org.datanucleus.store.rdbms.query.legacy.JDOQLQuery.compileInternal(JDOQLQuery.java:175)
        at org.datanucleus.store.query.Query.executeQuery(Query.java:1628)
        at org.datanucleus.store.rdbms.query.legacy.JDOQLQuery.executeQuery(JDOQLQuery.java:245)
        at org.datanucleus.store.query.Query.executeWithArray(Query.java:1499)
        at org.datanucleus.jdo.JDOQuery.execute(JDOQuery.java:243)
        at org.apache.hadoop.hive.metastore.ObjectStore.getTables(ObjectStore.java:781)
        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.RetryingRawStore.invoke(RetryingRawStore.java:111)
        at com.sun.proxy.$Proxy4.getTables(Unknown Source)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_tables(HiveMetaStore.java:2327)
        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.RetryingHMSHandler.invoke(RetryingHMSHandler.java:105)
        at com.sun.proxy.$Proxy5.get_tables(Unknown Source)
        at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTables(HiveMetaStoreClient.java:817)
        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.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:74)
        at com.sun.proxy.$Proxy6.getTables(Unknown Source)
        at org.apache.hadoop.hive.ql.metadata.Hive.getTablesByPattern(Hive.java:1009)
        at org.apache.hadoop.hive.ql.metadata.Hive.getAllTables(Hive.java:983)
        at org.apache.hadoop.hive.ql.exec.DDLTask.showTables(DDLTask.java:2215)
        at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:334)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:138)
        at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
        at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1336)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1122)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:935)
        at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)
        at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216)
        at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:412)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:755)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:613)
        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:160)

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

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

处理方案:

改动我们创建的hive元数据库的编码字符集,如:

alter database hive_test character set latin1;

转载于:https://www.cnblogs.com/gccbuaa/p/7337660.html

Hive集成Mysql作为元数据时,提示错误:Specified key was too long; max key length is 767 bytes...相关推荐

  1. 安装MySQL时提示错误:由于找不到MSVCP120.dIl,无法继续执行代码。重新安装程序可能会解决此 问题。

    如果根据安装MySQL时提示错误:由于找不到MSVCP120.dIl,无法继续执行代码.重新安装程序可能会解决此 问题._沐小侠-CSDN博客 这个大佬的还解决不来就下载一个MSVCP120.dIl修 ...

  2. mysql 错误193 0xc1_启动网维大师服务时提示“错误193: 0xc1”

    [问题现象] 启动网维大师服务时提示错误193: 0xc1,报错截图如下: [原因说明] 服务的启动路径中带有空格,并且服务调用程序(ServerManager.exe)的存放路径中包含不规则的文件夹 ...

  3. MySQL5.6建索引时遇到 Specified key was too long; max key length is 767 bytes错误提示解决办法

    一.错误提示 Specified key was too long; max key length is 767 bytes: 二.原因分析 在数据库中,索引的字段设置太长了,导致不支持.[根本原因: ...

  4. Mysql插入中文时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F...' fo

    Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F-' fo 分析如下: 首先通过语句 ...

  5. MySQL删除数据库时的错误(errno: 39)

    MySQL删除数据库时的错误(errno: 39) 由于mysql数据库是默认区分大小写的,部署的时候发现多了一些重复的表,于是就把多余的表删掉了.可是,剩下的重复的表再删除时会提示:表不存在. 于是 ...

  6. Navicat连接数据库成功,新建查询时提示错误“Cannot create file ……”

    Navicat连接数据库成功,新建查询时提示错误"Cannot create file --" 原因:编辑连接{高级}<设置位置>被修改,该oci.dll不正确 解决方 ...

  7. VS2010项目生成时提示错误“在证书存储区中找不到清单签名证书”?

    VS2010项目生成时提示错误"在证书存储区中找不到清单签名证书"? 解决办法:在项目属性里签名栏中的那个ClickOnce签名清单不知道什么时候勾选上了,去掉就一切正常了.如图 ...

  8. 记录使用IDEA部署Tomcat时提示错误:the selected directory is not a TomEE home

    使用IDEA部署Tomcat时提示错误:the selected directory is not a TomEE home 原因 : 选择错误 解决方案: 移除TomcatEE Server 添加T ...

  9. 运行Pangolin时提示错误

    运行Pangolin时提示错误 1. 需求和来源 2. 解决办法 1. 需求和来源 在 视觉SLAM笔记(14) Eigen几何模块 中需要运行Pangolin 执行程序应用过程中出现以下错误: $ ...

最新文章

  1. 通过Appium获取Android app中webview
  2. Spring Boot注入自定义properties文件配置
  3. jquery单选框radio绑定click事件实现和是否选中的方法
  4. STM32 LCD中英文字符显示学习笔记
  5. HTML/CSS——PC端QQ飞车官网首页
  6. illustrator下载_平面设计:16个Illustrator快捷方式可加快工作流程
  7. linux7 chkconfig,centos 6-7 chkconfig -systemctl关系对比
  8. 图像处理之卷积---任意卷积核的快速实现
  9. QT下添加*.qrc(图标Icon、图像)资源
  10. 什么是大数据分析平台
  11. Jenkins系列二:SVN+Maven+Tomcat自动构建和部署
  12. 集成DC电源RS485/422收发器数字隔离芯片CA-IS309X
  13. CSS设置字体和文字样式
  14. win10虚拟机dhcp服务器设置,win10 配置dhcp服务器设置
  15. QtCreator中Kits选项变灰,有感叹号
  16. Python3实现发送邮件、发送图片、附件等
  17. 学生实验室常见升压降压芯片电路介绍
  18. Python实现逐步回归
  19. 有了这些工具,可以助我工作效率起飞,强烈建议收藏!!
  20. 专为Oracle数据恢复而生 - PRM

热门文章

  1. 常用计算机检索技术的例子,专业检索常用方法及应用实例
  2. 如何退订语音包_怎么关闭语音助手 - 卡饭网
  3. 线性表:7.C语言链表实现俄罗斯轮盘赌小游戏
  4. Linux下coredump调试3:补录
  5. Linux终端下打印带颜色的信息
  6. 【kafka】在 Kafka Streams 中启用 Exactly-Once
  7. 【Flink】Flink 的 slotSharingGroup 有什么用
  8. 【Elasticsearch】如何在 Elasticsearch 中查找并移除重复文档
  9. Spring: 事务传播机制
  10. 01-eclipse打包运行程序总是报错java.lang.NoClassDefFoundError和ava.lang.ClassNotFoundException(打包原理)