ubuntu下修改MySQL的配置文件my.cnf

先sudo su转换成root,再用cd转到/etc/mysql目录下,用chmod修改权限(chmod 755 my.cnf),但这样还不能修改,再用vi命令(sudo vi my.cnf),通过上下方向键将光标移到[client]下面的空行,按I键,添加default-character-set=utf8,再按Esc键,通过上下方向键将光标移到[mysqld]下面的空行下,添加character-set-server = utf8   init_connect='SET NAMES utf8' ,按shift+Q,出现“:”,再在后面输入wq!,表示保存推出vi。就OK了。

需要重启mysql服务
停用:
sudo mysqladmin shutdown -u root -p
然后输入mysql的root用户的密码
启用:
sudo mysqld_safe -user=mysql &

查看一下现在mysql的编码
sudo mysql -u root -p

mysql>show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

现在不管在mysql shell下还是JDBC都可以正常显示中文了。但之前的数据还是不行,所以在这之前得先备份数据,修改完编码后再导入。

原文地址:https://www.cnblogs.com/zhongshenggen/p/5650155.html