1. MySQL的工作模型 C/S : 客户端/服务端模型
- 1.1 服务端程序
mysqld - 1.2 客户端程序
mysql 、mysqldump 、mysqladmin … - 1.3 连接协议(Linux)
网络套接字: TCP/IP网络连接串 ----> mysql -uroot -p123 -h10.0.0.51 -P3306
本地套接字: socket本地连接串 ----> mysql -uroot -p123 -S /tmp/mysql.sock
2. MySQL的实例
- 实例 = mysqld + Master Thread + worker Threads + 专用内存
- 公司 = Boss + Manager + worker + 办公室
3. mysqld 程序结构
-
3.1 SQL是什么?
结构化查询语言.关系型数据库中的专用命令. -
3.2 SQL种类 DDL : 数据定义
DCL : 数据控制
DML : 数据操作
DQL : 数据查询 -
3.3 一条SQL语句的执行逻辑
连接层:协议、验证、线程
SQL层:语法、语义、权限、解析、预处理、优化、执行、qc、日志
存储引擎层
4. MySQL对象逻辑结构
- 4.1 库 : database / schema
库名 属性
数据库中的Schema是什么?
“在数据库中,schema(发音 “skee-muh” 或者“skee-mah”,中文叫模式)是数据库的组织和结构,schemas andschemata都可以作为复数形式。模式中包含了schema对象,可以是表(table)、列(column)、数据类型(data type)、视图(view)、存储过程(stored procedures)、关系(relationships)、主键(primary key)、外键(foreign key)等。”
参考:https://blog.youkuaiyun.com/u010429286/article/details/79022484 - 4.2 表 : table
表名 表属性 字段(列) 数据行(记录)
创建表:
create table 表名(
字段名 类型(长度) 约束,
字段名 类型(长度) 约束
);
5. MySQL对象物理结构
- 5.1 宏观如图示
- 5.2 微观如图示
简易段区页结构图