许多小伙伴在MySQL建立数据库的时候使用的是UTF-8编码,在连接的时候使用的连接(
jdbc:mysql://192.168.2.100:3306/test?characterEncoding=utf-8
)也设置了characterEncoding=utf-8
,但是在使用JAVA或者其他语言插入或者更新中文数据的时候总是显示???,在这里提供解决方案。
编辑安装在CentOS上的MySQL配置文件:
vim /etc/mysql/my.cnf
向文件中添加如下设置:
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci skip-character-set-client-handshake
其中[client]
是配置属性头,如果配置文件中有,请勿重复添加。至于如在在Linux系统上编辑文件,请自行百度。
请看我自己的文件配置:
[外链图片转存失败(img-fb6AhtkA-1569050172617)(https://img-blog.csdn.net/20180109225516947?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTGFtbW9ucGV0ZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
修改完成之后,需要重启你的MySQL服务:
yum安装的MySQL在CentOS 6.x重启命令:service mysqld restart yum安装的MySQL在CentOS 7.x重启命令:systemctrl mysqld restart 自己安装的请到安装目录的bin中启动。