hive中文注释乱码问题
??hive建表的过程经常会碰到字段的中文注释乱码的问题,下面就介绍下如何处理此类问题。
1. 修改元数据的编码
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_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 index_params modify column PARAM_VALUE varchar(4000) character set utf8;
2.修改hive配置文件
??当执行以上sql语句后,hive的中文注释还是乱码,这个时候就需要修改hive的配置文件,需要我们修改hive-site.xml配置文件,具体内容如下
# 以下配置中characterEncoding=UTF-8&这部分如果缺失就会导致中文注释乱码,将这部分内容加到配置文件中中文注释乱码问题就解决了
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://lx01:3306/hive?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false</value>
</property>
以上就是处理hive中文注释乱码问题的解决方式。
|