MySQL字符集问题
初始化文件 首先,MySQL的字符集问题主要是两个概念,一个是Character Sets,一个是Collations,前者是字符内容及编码,后者是对前者进行比较操作的一些规则。这两个参数集可以在 数据库 实例、单个数据库、表、列等四个级别指定。对于使用者来说,一般推荐使用utf8编码来 存储 数据。而要解决乱码问题,不单单是MySQL数据的存储问题,还和 用户 的程序 文件 的编码方式、用户程序和MySQL数据库的连接方式都有关系。 在MySQL5.5版本下,在my.cnf (my.ini)中指定数据库端字符集为UTF8,其中init_connect参数的作用是给每个普通用户的连接自动设置字符集(但是要注意的是,这个命令对具有super权限的用户是不生效的)。 [client] # 修改客户端默认字符编码格式为utf8 default-character-set = utf8 [mysqld] # 修改服务器端默认字符编码格式为utf8 character-set-server = utf8 # 在每个普通用户连接上来的时候都会触发执行 init_connect = 'SET NAMES GBK' 在客户端中查看配置生效 mysql> show variables like '%char%'; +--------------------------+---------------