修改mysql配置文件my.cnf
在linux系统中,希望可以在安装mysql后,建库或者建表或者写入字段时,可以以utf-8的编码格式录入,这样就可以保证在输入中文的时候,不会乱码。
以下是我们期望的mysql的utf8格式(通过在mysql中查询得到的)。
代码块1
show variables like '%char%';
+--------------------------+----------------------------+
| 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编码格式确实如下:
(character_set_database 和 character_set_server 是 latin1 编码格式)
代码块2
show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
现在有些mysql的my.cnf配置文件中,只有以下内容,少了很多的东西。
但是依然可以在my.cnf配置文件中相应位置加入以下内容:
(有 [client]、[mysql]、[mysqld] 的直接在相应的位置添加相应的配置就可以,若是只有其中几个或一个(如:只有 [mysqld] ),那就在空白处添加其他的配置)
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci
注意: 每一个 “[ ]” 中的东西代表一个块,这个块下方的内容只是他自己的配置,每个 “[ ]” 不能放到另一个 “[ ]” 的下面
(如: 在 [client] 下面的配置只是自己的,他也不能放到 [mysql] 的下面)!!!!!
!!!这样是错误的!!!
[client]
[mysql]
default-character-set=utf8
default-character-set=utf8