E-MapReduce解决hive comment中文乱码问题

在最新版本的EMR-1.3.0已经解决了hive comment中文乱码问题。如果已经申请了包年包月的集群,用的是老版本,那么可以过下面介绍的步骤解决这个问题。


  • 1.登录mysql变更hive的meta表
use hivemeta;
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配置

在hadoop账号下操作,su hadoop

文件 /etc/emr/hive-conf/hive-site.xml

jdbc:mysql://${master_hostname}/hivemeta?createDatabaseIfNotExist=true 变成 jdbc:mysql://${master_hostname}/hivemeta?createDatabaseIfNotExist=true&characterEncoding=UTF-8


  • 3.重启hive服务

在hadoop账号下操作,su hadoop

ps -ef | grep hive ;将列出来的进程kill掉。然后重启hive服务

hive --service metastore 2>&1 >/dev/null &

hive --service hiveserver2 2>&1 >/dev/null &

  • 4. 重新建表
带中文comment创建表。

然后desc tablename查看。

上一篇:jQuery offset,position,offsetParent,scrollLeft,scrollTop html控件定位 css position


下一篇:MaxCompute SQL与标准SQL的主要区别及解决方法