经历过几番折腾,终于解决号Mysql中文乱码问题。
起初是在Mysql下插入中文乱码,这个是数据库字符集问题,可以在创建数据库的时候指定UTF8,这时可以在数据库下插入中文字符了。本想不再折腾默认字符集,顶多每次创建数据库制定字符集,但是接下来又有问题发生。Idea用JDBC插入中文字符到Mysql下,出现了中文乱码问题。
上网找了一种解决方案试了一下不行
修改/etc/mysql/conf.d$ 下的mysql.cnf文件 在[mysql]下加character_set_server=utf8和mysqld.cnf文件下[mysqld]节点下加character_set_server=utf8。
不懂为什么我的mysql在这个目录下没有mysqld文件,有一个mysqldump.cnf,不懂是不是同一个东西,而且这种方法也是不可行。
下面是可行的解决方案
找到etc 目录下的my.cnf
也可以直接使用命令行
sudo vim /etc/my.cnf
在[mysqld]节点前的[client]节点(如果没有这个节点自己添加)加入
default-character-set=utf8
在[mysqld]节点下加
character_set_server=utf8
在[mysql]节点下加
character_set_server=utf8
也可以直接复制我的配置覆盖
default-character-set=utf8
[mysqld]
character_set_server=utf8
datadir=/usr/local/mysql/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400新的一年希望进步多多
innodb_file_per_table=1
[mysql]
character-set=utf8