MySQL字符集

1.字符集介绍

字符集:是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等 #最早的字符集:ASCII码 中国的字符集:gbk,utf8,utf8mb4,gbk2312,.... 日本:shift-JIS 韩国:Euc-kr 万国编码:Unicode字符集 #数据库常用的字符集 gbk: 一个汉字占用2个字节 utf8: 一个汉字占用3个字节 utf8mb4: 一个汉字占用4个字节 #字符集修改 字符集有一个包含关系,修改时要注意小的范围可以修改为大范围的字符集 #数据库查看字符集 mysql> show charset;

2.校验规则

#查看校验规则 mysql> show collation; | latin1_bin               |
| latin1_general_ci        |
| latin1_general_cs        | #校验规则区别 1.ci结尾的校验规则不区分大小写 2.bin和cs结尾的校验规则区分大小写

3.统一字符集

#1.xshell字符集 #2.linux系统的字符集 #永久修改: 1)centOS7: [root@db01 ~]# vim /etc/locale.conf LANG="zh_CN.UTF-8"
    2)centOS6: [root@db01 ~]# vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8" #临时修改: [root@db01 ~]# LANG="zh_CN.UTF-8
 #3.cmake阶段指定字符集 #使用utf8字符集 -DDEFAULT_CHARSET=utf8 #校验规则 -DDEFAULT_COLLATION=utf8_general_ci #4.配置文件可以修改默认的字符集 [root@db01 ~]# vim /etc/my.cnf [mysqld] character-set-server=utf8 #5.创建数据库时指定字符集 mysql> create database zifuji3 charset gbk; #6.在库下建表 在库下面建表,表的字符集随着库走,不走默认与cmake的字符集 #7.建表时指定字符集 mysql> create table test2(id int) charset utf8mb4; #8.修改已有表的字符集 mysql> alter table test charset utf8mb4;