序言
无论是使用何种语言进行编程,碰到的第一个问题莫过于乱码的问题,而使用数据库的时候,也大致差不多。
hive使用元数据库来记录相关hdfs数据文件和数据库表之间的映射关系,当创建的数据库是使用中文注释的时候,那么就会碰到乱码问题。
HIVE元数据库乱码
1 问题现象
创建一个ods层的表,使用中文进行注释,发现不能显示乱码:
2 检查元数据库编码
数据库显示为乱码,第一时间检查元数据库的编码,看是否是utf8编码。
发现数据库编码为latin1,从而要将数据库编码修改为utf8.
//修改mysql的配置文件my.cnf,在mysqld的配置下加上字符编码为utf8
[root@KEL1 ~]# diff /etc/my.cnf /etc/my.cnf.bak
28,32d27
< character-set-server=utf8
< [client]
< defaul