在练习Hive的时候出现了如下问题,创建好了的表不显示中文注释:
我使用的是Node03远程连接到Node02中的Hive。
解决方法如下:
1.输入密码登录mysql。
mysql -uroot -p
2.切换数据库,我的元数据库是hive,有的人是metahouse。
use hive;
3.修改表结构
(1)修改表字段注解和表注解
alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
alter table TABLE_PARAMS modify column PARAM_VALUE mediumtext 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;
4.退出mysql
exit;
5.重启MySQL服务
systemctl restart mysqld
6.切换到Hive的conf目录下
cd /root/export/servers/apache-hive-2.3.7-bin/conf/
7.打开hive-site.xml。
vi hive-site.xml
8.找到<name>javax.jdo.option.ConnectionURL</name>的位置
找到以后,在下一行<value>中的usessL=false后面追加以下内容:
&useUnicode=true&characterEncoding=UTF-8
9.按下ESC:wq保存退出
10.重启hiveserver2服务
hiveserver2
11.【重新】创建带有中文注释的表格,就能正常显示中文了。