创建Hive表后,查看表结构发现中文注释乱码

问题描述:

创建Hive表后,查看表结构发现中文注释乱码

解决方法:

  1. 进入mysql,执行如下命令
sql 复制代码
use hive;
#修改表字段注解编码
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表,然后重新建表即可

如果还是不行,可能是mysql编码问题

解决办法:

  1. 编辑Mysql的配置文件,MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,Linux下一般是 /etc/my.cnf,/etc/mysql/my.cnf,如果找不到,可以用find命令查找。Linux用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,只需要使用如下命令即可
bash 复制代码
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
  1. 在 [mysqld] 标签下加上两行
bash 复制代码
default-character-set = utf8

character_set_server = utf8
  1. 在 [mysql] 标签下加上一行
bash 复制代码
default-character-set = utf8
  1. client\]标签下加上一行

default-character-set = utf8

复制代码
5. 重启mysql服务

在Linux下使用 service mysql restart\*\*
相关推荐
大数据狂人8 小时前
深入剖析 StarRocks 与 Hive 的区别、使用场景及协同方案实践
大数据·starrocks·hive·数仓
wzy062311 小时前
基于 Hadoop 生态圈的数据仓库实践 —— OLAP 与数据可视化(二)
hive·hadoop·impala·sparksql
随心............1 天前
hive专题面试总结
数据仓库·hive
白日与明月5 天前
Hive-vscode-snippets
hive·hadoop·vscode
Sirius Wu5 天前
Hive的窗口函数
数据仓库·hive·hadoop
シ風箏6 天前
Hive【安装 01】hive-3.1.2版本安装配置(含 mysql-connector-java-5.1.47.jar 网盘资源)
java·hive·mysql
Sirius Wu7 天前
一文说清楚Hive
数据仓库·hive·hadoop·后端
Sirius Wu7 天前
一文说清楚Hive中常用的聚合函数[collect_list]
hive·hadoop·list
sheep85218 天前
HIVE实战处理(二十四)留存用户数
数据仓库·hive·hadoop
码字的字节8 天前
深入解析Hive SQL转MapReduce的编译原理:从AST抽象语法树到Operator执行树
hive·sql·ast·mapreduce·operator