hive的Specified key was too long; max key length is 767 bytes问题解决

上次安装hive时遇到很多问题,最后遗留下一个没有解决的问题,最后通过询问得以解决在这记录下:方便遇到同样问题的人:

问题阐述

在安装完hive后,执行:

创建表:

删除表报错:


解决方法:

一般是由于mysql的最大索引长度导致,看了一个人的文章颇有感触下面给出链接:

http://blog.csdn.net/cindy9902/article/details/6215769

解决方法如下:

1、数据库的字符集除了system为utf8,其他最好为latin1,否则可能出现如上异常。

2、set global binlog_format='MIXED';READ-COMMITTED需要把bin-log以mixed方式来记录 

改完上述两种方法后,我还是会出现以上问题,我把mysql的metastore_db里面的所有表删除,hadoop重启,然后重新启动hive之后就能够正常删除表了。

问题解决。




posted on 2011-12-06 12:33  h2内存数据库  阅读(5081)  评论(0编辑  收藏  举报

导航