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