创建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标签下加上一行
bash 复制代码
default-character-set = utf8
  1. 重启mysql服务

在Linux下使用 service mysql restart**

相关推荐
skywalk81632 天前
卡不等于分支:我用 TRAE 宝配合 Hive 跑三张任务卡的一天
运维·人工智能·hive·trae
freejackman3 天前
【架构篇】双遍历 + 多栈协同:手撸 SQL 血缘引擎的架构思考
java·大数据·数据库·hive·sql·架构·spark
陈年老古董3 天前
ClickHouse 单机搭建记录
hive·笔记·学习·clickhouse·硬件架构
陈年老古董3 天前
Spark 3.1.3 集群搭建 + Spark-SQL 整合 Hive 记录
hive·sql·spark
FserSuN3 天前
Hive 分区表存储与查询优化学习总结
hive·hadoop·学习
步行cgn4 天前
为什么既要 web.xml 又要 springmvc.xml?能不能只配一个?
xml·前端·hive
@小匠5 天前
Flink + Iceberg 批量失败复盘:一次超时如何变成 Hive Metastore 锁泄漏
大数据·hive·flink
skywalk81636 天前
hive —— 多机 AI Agent 协同的任务总线:分布式,多节点同时运行,保障不会宕机
人工智能·hive·分布式
棣廷7 天前
初识Hive(2)
数据仓库·hive·hadoop
skywalk81637 天前
deepseek对skywalk163/hive 和hivecommons/hive 两个多机AI Agent任务调度项目的对比
人工智能·hive·agent