MySQL 基础
MySQL 基础
MySQL Install on MacOS
使用可解压的二进制安装包,安装 MySQL (Installing MySQL),第一次启动需要初始化数据目录,参考这里:Init the data directory on MySQL Document
主从同步配置
Note: MySQL 8.0 配置主从同步和之前的版本有些区别,需要特别注意。
MySQL 特性
字符集与比较规则
字符集:ASCII / ISO 8859-1(latin1) / GB2312 / GBK / utf8
使用的这个MySQL
版本一共支持41
种字符集,其中的Default collation
列表示这种字符集中一种默认的比较规则
。
比较规则名称以与其关联的字符集的名称开头。如上图的查询结果的比较规则名称都是以
utf8
开头的。后边紧跟着该比较规则主要作用于哪种语言,比如
utf8_polish_ci
表示以波兰语的规则比较,utf8_spanish_ci
是以西班牙语的规则比较,utf8_general_ci
是一种通用的比较规则。名称后缀意味着该比较规则是否区分语言中的重音、大小写;
后缀
英文释义
描述
_ai
accent insensitive
不区分重音
_as
accent sensitive
区分重音
_ci
case insensitive
不区分大小写
_cs
case sensitive
区分大小写
_bin
binary
以二进制方式比较
每种字符集对应若干种比较规则,每种字符集都有一种默认的比较规则,SHOW COLLATION
的返回结果中的Default
列的值为YES
的就是该字符集的默认比较规则,比方说utf8
字符集默认的比较规则就是utf8_general_ci
。
字符集支持各种级别的配置:服务器级别 -> 数据库级别 -> 表级别 -> 列级别
MySQL 物理表
在 InnoDB 存储引擎中,表都是根据主键顺序组织存放的,这种存储方式的表为索引组织表。每张表都有个主键,如果没有定义主键,按照如下的方式来选择主键:
找到第一个定义的非空唯一索引,作为主键
如果不存在唯一索引,InnoDB 就自动创建一个 6 Bytes 大小的指针
最后更新于