解决hive注释中文乱码的

      hive中建表以后,desc [tablename]查看表结构,发现表结构的中文字段为乱码。原因是hive的元数据是由Mysql管理,所以直接修改Mysql的字符编码格式就可以解决,数据库 Metastore 中执行以下 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;

      然后修改hive-site.xml配置文件:

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://IP:3306/db_name?createDatabaseIfNotExist=true&amp;useUnicode=true&characterEncoding=UTF-8</value>
</property>

      最后重启hive,查看表结构发现乱码问题已解决。

猜你喜欢

转载自blog.csdn.net/xiaozhaoshigedasb/article/details/103781765