InnoDB存储引擎(一)MySQL体系结构和存储引擎

最近在学习MySQL技术内幕  InnoDB存储引擎  第2版,整理了一些文档分享出来,同时也方便以后查看。若有不当之处,烦请批评指正。

有关内容地址如下:

InnoDB存储引擎(二)InnoDB存储引擎

InnoDB存储引擎(三)文件

InnoDB存储引擎(四)表

InnoDB存储引擎(五)索引与算法

InnoDB存储引擎(六)锁

InnoDB存储引擎(七)事务

InnoDB存储引擎(八)备份与恢复

 

1. MySQL被设计成一个单进程多线程架构的数据库,MySQL数据库实例在系统上的表现就是一个进程

2. 当启动实例时,读取配置文件,根据配置文件的参数来启动数据库实例;若没有,按编译时的默认参数设置启动

3. MySQL体系结构

  1. InnoDB存储引擎(一)MySQL体系结构和存储引擎_第1张图片

结构 说明
Connectors 不同语言中与SQL的交互
Management Services & Utilities 管理服务和工具组件,例如备份恢复、MySQL复制、集群等
Connection Pool 连接池组件,管理缓冲用户连接、用户名、密码、权限校验、线程处理等需要缓存的需求
SQL Interface SQL接口组件,接收用户的SQL命令,并且返回用户需要查询的结果
Parser 查询分析器组件,SQL命令传递到解析器的时候会被解析器验证和解析
Optimizer 优化器组件,对查询进行优化
Cache & Buffer 缓冲组件,查询缓存,如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据,MySQL 8被取消
Engine 插件式存储引擎,是MySQL中具体与文件打交道的子系统,是MySQL中最具特色的一个地方
File System 物理文件

4. InnoDB存储引擎

存储引擎是基于表的,而不是数据库

        ■ 支持事务:行锁设计、支持外键

        ■ 将数据放到一个逻辑的表空间中,ibd文件

        ■ 通过多版本并发控制(MVCC)来获得高并发性,并且实现了SQL的4个标准隔离级别,默认为可重复读

        ■ 提供插入缓存、二次写、自适应哈希索引、预读等高性能和高可用的功能

        ■ 采用聚集的方式存储表中数据,按主键的顺序进行存放。没有指定主键,会为每一行生成一个6字节的ROWID,并以此作为主键

5. MyISAM

  • 不支持事务、表锁设计、支持全文索引

你可能感兴趣的:(#,InnoDB存储引擎,关系型数据库)