hive表描述乱码

原因是Hive的元数据存储在Mysql中采用默认latin1编码。海致的开发环境出现了这个问题,解决方法如下所示。

    1.进入mysql ,执行
     show create database hive
     查看hive 数据库当前编码,如果是utf8 则执行下面sql:
     alter database hive default character set latin1
     将 hive 数据库默认编码改成 latin1

    2.为了以下支持hive建表时插入中文注释 需要在mysql中做如下设置:
    //修改字段注释字符集
    alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
    //修改表注释字符集
    alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;
    //修改分区注释字符集
    alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8;
    alter table PARTITION_PARAMS  modify column PARAM_VALUE varchar(4000) character set utf8;
    //修改索引注解
    alter table INDEX_PARAMS  modify column PARAM_VALUE  varchar(4000) character set utf8;

    原文作者:似水之星
    原文地址: https://www.jianshu.com/p/5533cd1661ea
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞