首页 > 代码库 > 设定mysql的默认字符集

设定mysql的默认字符集

mysql>show global variables like ‘%server%‘;    --查看当前全局字符集


+----------------------+--------------------+

| Variable_name        | Value       |       

+----------------------+--------------------+

| character_set_server | latin1         |

| collation_server    | latin1_swedish_ci 

+----------------------+--------------------+

2 rows in set (0.00 sec)


如何修改为我们熟悉的UTF8字符集呢?以下列出两种:


  1. 修改my.cnf文件,需重启服务,长期有效


在server下添加两行:

character_set_server=utf8

collation_server=utf8_general_ci


2.修改mysql变量,不用重启,建立新会话时生效,但重启后失效.


mysql> set global character_set_server=utf8;        --修改当前字符集为utf8,不加global 却仅对当前会话有效.


3.在客户端指定要使用的字符集

mysql>set character-set_results=gbk;              --在客户端设定


------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


mysql>show create table 表名;                 --查看建表时使用的字符集

mysql> alter database 数据库名 character set utf8;       --更改数据库默认字符集utf8,更新后新建表格将采用新的字符集

mysql> alter table 表名 character set utf8;           --更改表格默认字符集为utf8,更新后添加的列将采用新的字符集

mysql> show full fields from 表名;                 --查看数据表的各列信息,包括列的字符集和可操作权限等

mysql>alter table 表名 modify 字段名  字段类型  CHARACTER SET utf8, modify 字段名 字段类型 CHARACTER SET utf8;          --更新字段字符集属性为utf8,我原来的为latin1,不能插入中文


设定mysql的默认字符集