https://dev.mysql.com/doc/refman/5.7/en/
https://dev.mysql.com/doc/internals/en/
1.c/s结构模型
Client
自带客户端命令:mysql mysqldump
第三方工具: sqluog navicat
API: php-mysql pymysql
Server:mysqld
连接方式:本地socket(-S[socket文件]) 、TCP/IP(-h[地址]-P[端口])
2.实例
nysqld守护进程+线程(M、IO、SQL、Purge ..)+预分配的内存(独占)

3.MySQL 核心体系结构(SQL语句的执行过程)
Server层(实例层)
engine层(存储层)

4.对象逻辑结构
linux 目录、文件
mysql 库、表
库:库名、库属性
表:表名、表属性、列(列名、列属性)、行 -->元数据(数据字典)+数据
5.对象-物理存储结构-宏观
库:对应着OS中的目录
表:
例如:user 表 MISAM
urer.frm :存储数据字典信息(列相关信息)
urer.MYD :存储数据行
urer.MYI :存储索引
servers 表 InnoDB
servers.frm :存储数据字典信息(列相关信息)
servers.ibd :存储数据行和索引
6.InnoDB存储引擎- 物理存储结构引入-微观结构
存储引擎:MySQL内部的“文件系统”和磁盘交互的结构。
segment(数据段):表的数据存放位置,包含1-N个extent(区、簇)
extent(区、簇) :包含了连续的64个pages,默认1M
page (数据页) :最小IO单元,默认是16KB,4个os block

网友评论