hive metadata 存mysql 注释中文乱码的问题

来源:互联网 发布:网络歌手叶子 编辑:程序博客网 时间:2024/04/29 12:28


########### hive 中文乱码的问题#############

解决方案:数据库编码为latin1.将一下表的字段(涉及注释的字段都改)编码设定为UTF8

1、然后进入数据库执行以下5条SQL语句:

(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

(2) 修改分区字段注解:

 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; 
(3)修改索引注解:
alter table  INDEX_PARAMS  modify column PARAM_VALUE  varchar(4000) character set utf8;
 
2、修改hive连接mysql的连接为utf-8<property> 
   <name></name> 

  <value>jdbc:mysql://IP:3306/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8</value> 
  <description>JDBC connect string for a JDBC metastore</description> 
</property>


0 0