首页 > 其他 > 详细

Hive 问题合集 持续更新

时间:2021-08-11 23:35:04      阅读:31      评论:0      收藏:0      [点我收藏+]

一 hive建表信息中文乱码:显示问号等

问题现象:

技术分享图片

主要原因:

  1 hive元数据库mysql 或者mariaDB 编码格式问题

  2 hive元数据定义信息编码格式问题

解决方案:

对于第一种问题:修改配置文件

在/etc/my.cnf文件中
在[mysqld]标签下添加
init_connect=SET collation_connection = utf8_unicode_ci
init_connect=SET NAMES utf8
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

文件/etc/my.cnf.d/client.cnf
在[client]中添加
default-character-set=utf8

文件/etc/my.cnf.d/mysql-clients.cnf
在[mysql]中添加
default-character-set=utf8

全部配置完成,重启mariadb
systemctl restart mariadb

然后进入musql,执行 SHOW VARIABLES LIKE ‘character%‘;

 

对于第二种问题 :

1、查看存放Hive元数据信息的数据库表字符集;是否因为字符集问题

技术分享图片

 

 很明显,由于表使用的是默认的latin1字符集,所以中文显示不出来,应该使用utf8;

2 登陆Mysql数据库切换到Hive元数据库:根据具体设定自行判断

修改以下两张表即可;
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_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8; 

 

Hive 问题合集 持续更新

原文:https://www.cnblogs.com/xyniu/p/15129930.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!