MySQL字符集的设置

Notice:文章基于ubuntu系统而写

1.关于MySQL字符集

MySQL的字符集支持(Character Set Support)有两个方面: 

 字符集(Character set)和排序方式(Collation)。

MySQL对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。

MySQL对于字符集的指定可以细化到一个数据库,一张表,一列,应该用什么字符集。

2.查看MySQL字符集

2.1.查看字符集的设置

mysql> show variables like 'character_set_%';

2.2.查看字符集排序设置

mysql> show variables like 'collation_%';

3.修改MySQL字符集

3.1修改服务器级别字符集

a.临时修改

mysql>SET GLOBAL character_set_server=utf8;

b.永久修改

 打开/etc/mysql/my.cnf,在[mysqld]后添加character-set-server=utf8

3.2修改数据库级 

a. 临时更改

mysql>SET GLOBAL character_set_database=utf8;

b. 永久更改

改了服务器级就可以了

3.3修改表级 

mysql>ALTER TABLE table_name DEFAULT CHARSET utf8; 更改了后永久生效

3.4修改列级修改示例

mysql>ALTER TABLE `products` CHANGE `products_model` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; 更改了后永久生效 

3.5更改连接字符集

 a. 临时更改:mysql> SET GLOBAL character_set_client;

b. 永久更改:打开/etc/mysql/my.cnf,在[client]后添加default-character-set=utf8

Notice:3.1和3.5需要重启mysql:   service mysql restart

原文地址:https://www.cnblogs.com/ygjlch/p/4761978.html