MySQL字符集
Posted 六月OvO
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL字符集相关的知识,希望对你有一定的参考价值。
字符集:是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等
#最早的字符集:ASCII码
中国的字符集:gbk,utf8,utf8mb4,gbk2312,....
日本:shift-JIS
韩国:Euc-kr
万国编码:Unicode字符集
#数据库常用的字符集
gbk: 一个汉字占用2个字节
utf8: 一个汉字占用3个字节
utf8mb4: 一个汉字占用4个字节
#字符集修改
字符集有一个包含关系,修改时要注意小的范围可以修改为大范围的字符集
#数据库查看字符集
mysql> show charset;
#查看校验规则
mysql> show collation;
| latin1_bin |
| latin1_general_ci |
| latin1_general_cs |
#校验规则区别
1.ci结尾的校验规则不区分大小写
2.bin和cs结尾的校验规则区分大小写
#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;