【HIVE】hive中解决中文乱码问题

问题详情:

为了解决 Hive 中创建表的时候,注解等中文显示的乱码问题
需要设置 MetaStore DataBase 中某些字段的字符编码为 utf-8

Hive MetaStore 配置说明
    1. MySQL 授权
      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION ; FLUSH PRIVILEGES ;
    1. 建议先建元数据库,设置编码为 latin1.
      – a. 修改表字段 注解 和 表 注解
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 ;

– b. 修改分区字段注解

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 ;

– c. 修改索引注解

ALTER TABLE INDEX_PARAMS MODIFY COLUMN PARAM_VALUE varchar(4000) character set utf8 ;

– d. 修改 数据库 注解

ALTER TABLE DBS MODIFY COLUMN `DESC` varchar(4000) character set utf8 ;

设置 hive 配置文件中连接 mysql 中字符传输方式

jdbc:mysql://bigdata-hpsk01.huadian.com/metaStore_cdh?createDatabaseIfNotExist=true&characterEncoding=UTF-8

此处要注意转义字符的问题!(例如&要用&)

你可能感兴趣的:(Hive)