当使用Sqoop工具向MySQl数据库导入数据时,可能会出现中文乱码问题,原因是character_set_server默认设置是latin1,不是中文编码。
1.查询数据库当前的字符编码格式,可以使用如下命令:
mysql> show variables like ‘char%’;
上面的查询结果中,character_set_database的格式编码是latin1 ,不是utf8,需要修改。
可以单个设置修改编码方式,比如,使用如下命令:
mysql> set character_set_database=utf8;
但是通过这种方式设置字符编码格式,重启MySQL服务以后就会失效。因此,建议用以下的方法:
1)修改配置文件
$ vim /etc/mysql/mysql.conf.d/mysql.cnf
在[mysqld]下面添加一行:character_set_database=utf8
2)重启MySQL服务
$ service mysql restart
3)登录MySQL查看当前编码方式
mysql>show variables like "char%";