这个还是因为编码的问题:
hive元数据表以及字段默认编码是 latin1
,需要修改为utf8
执行如下语句:
如果已经乱码的,不方便再重新建hive表,可以直接去mysql表中找到对应的记录,直接修改元数据即可。
a. 修改字段注释字符集
alter table COLUMNS_V2 modify columnCOMMENT varchar(256) character set utf8;
b. 修改表注释字符集
alter table TABLE_PARAMS modifycolumn PARAM_VALUE varchar(4000) character set utf8;
c. 修改分区表参数,以支持分区键能够用中文表示
alter table PARTITION_PARAMS modifycolumn PARAM_VALUE varchar(4000) character set utf8;
alter table PARTITION_KEYS modifycolumn PKEY_COMMENT varchar(4000) character set utf8;
d. 修改索引注解
alter table INDEX_PARAMS modifycolumn PARAM_VALUE varchar(4000) character set utf8;