美文网首页
hive mysql元数据,报错 Specified key w

hive mysql元数据,报错 Specified key w

作者: 姜小嫌 | 来源:发表于2020-01-02 13:39 被阅读0次

    Specified key was too long; max key length is 767 bytes 此错误为hive 元数据mysql 字符集编码问题
    如 show create table PARTITIONS ;
    utf-8会报上述错误。
    要把CHARSET=utf-8 修改为 CHARSET=latin1;

     alter table PARTITIONS convert to character set latin1;
    
    image

    所以最好在hive 建库之初就设置好字符集编码

     alter database hivedb character set latin1;
    

    这样就万事大吉了,再启动hive metastore 服务 所有的表都为 latin1编码了。
    但是如果先启动了 metastore 服务,这样hivedb 中所有的表都是utf-8了(当然这根数据库的配置有关)。
    这样你再执行 alter database hivedb character set latin1; 就晚了。元数据表已经创建完毕了,都是utf-8了。
    所以你要把hivedb 中所有的表都修改一遍

     alter table table_name convert to character set latin1;
    

    相关文章

      网友评论

          本文标题:hive mysql元数据,报错 Specified key w

          本文链接:https://www.haomeiwen.com/subject/vaxooctx.html