mysql的默认编码是拉丁,如果给数据库中插入汉字都会显示成问号。安装mysql后,启动服务并登陆,使用如下命令查看mysql数据库的默认编码:
show variables like 'character%';
由上图可见database和server的字符集使用了latin1编码方式,不支持中文,即存储中文时会出现乱码。以下修改方法:
Linux 系统
(1)关闭mysql服务
service mysql stop
(2)修改 /etc/mysql/my.cnf (默认的安装路径)
vim /etc/mysql/my.cnf
打开my.cnf后,在文件内的[mysqld]下增加如下两行设置:
character_set_server=utf8
init_connect='SET NAMES utf8'
保存退出
(3) 重新启动mysql服务
service mysql restart
完成修改,使用查询命令show variables like 'character%'; 查看编码变为utf8的。
windows系统
打开mysql安装目录,有一个my-default.ini文件,复制一份修改名称my.ini
打开my.ini,加入下面的内容:
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
保存,重启mysql服务,完成修改。