huemysql中⽂乱码_HUEbeeswax中⽂显⽰问题的解决⽅案HUE是Cloudera推出的Hadoop⽣态系统的Web访问接⼝,基于Python Django开发。
在使⽤过程中发现,如果提交的SQL语句中有中⽂的注释,提交之后,整个语句将会保存在后端的MySQL历史表中,但是再次去查看历史记录的时候,其中的中⽂却显⽰成⼀串问号。显然,这种问题是因为数据库编码问题导致的。为了解决这个问题,可以做如下的操作:
1。 修改MySQL的配置⽂件(/etc/myf),将默认编码设置成utf8:
[root@report hue]# cat /etc/myf
[mysqld]
datadir=/data/mysql-data
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[client]
default-character-set=utf8
[root@report hue]# cat /etc/myf
[mysqld]
datadir=/data/mysql-data一串好看的乱码
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[client]
default-character-set=utf8重新启动MySQL。
2. 如果是全新安装,则直接执⾏如下命令同步数据库即可(如果是全新安装,需要将库表转为相应的编码格式):
sudo -u hue /usr/share/hue/build/env/bin/hue syncdb --noinput
sudo -u hue /usr/share/hue/build/env/bin/hue syncdb --noinput
修改⽂件
/usr/share/hue/apps/jobsub/src/jobsub/migrations/0002_auto__add_ooziestreamingaction__add_oozieaction__add_ooziewor
/usr/share/hue/apps/jobsub/src/jobsub/migrations/0002_auto__add_ooziestreamingaction__add_oozieaction__add_ooziewor 中,搜索job_properties,将对应的类型都改成dels.fields.TextField, 同时将后⾯的max_length参数删除掉即可。
4. 最后重新启动HUE服务,再次提交包含中⽂的查询,在查询历史中查看,中⽂的显⽰就正常了:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论