MySQL的InnoDB和MyISAM引擎在数据结构和性能上有哪些显著区别?

2026-04-18 03:521阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2146个文字,预计阅读时间需要9分钟。

MySQL的InnoDB和MyISAM引擎在数据结构和性能上有哪些显著区别?

MySQL的SQL层架构流程概述:

1.初始模块:初始化一些参数,例如初始myinit配置文件中的参数。

2.连接管理:处理数据库连接。

先大体看一下MySQL的SQL layer层的一个架构流程:

对一些关键模块做一下简单的描述:

1.初始模块:初始一些参数,比如初始myinit配置文件(在安装的根目录下)里的一些参数。

2.连接管理模块:启动监听,监听连接请求

3.连接进程模块:可以理解为线程池

4.用户模块:检验用户,令牌和权限

5.命令分发器:处理不同类型的请求

6.查询缓存模块:做缓存处理,做查询的cache,可以理解为一个Map,查询语句为key,结果值为value

7.日志记录模块

8.命令解析器(parser):对于不同类型的sql语句进行处理分发,select:查询优化器,dml:表变更模块,ddl:表维护模块,rep:复制模块(主从复制),status:状态模块。

9.访问控制:

10.表管理模块:

11.存储引擎接口:和Storage Engines打交道

直接来到Storage Engines,这讲的最多的就是引擎了,如:

Myisam、Innodb、Faicon、Memory、Archive等等引擎

而我们常用的是Innodb和Myisam这两种,这两种索引最直接的区别,可以从采用对应引擎而生成的数据表文件,进行对比。

阅读全文

本文共计2146个文字,预计阅读时间需要9分钟。

MySQL的InnoDB和MyISAM引擎在数据结构和性能上有哪些显著区别?

MySQL的SQL层架构流程概述:

1.初始模块:初始化一些参数,例如初始myinit配置文件中的参数。

2.连接管理:处理数据库连接。

先大体看一下MySQL的SQL layer层的一个架构流程:

对一些关键模块做一下简单的描述:

1.初始模块:初始一些参数,比如初始myinit配置文件(在安装的根目录下)里的一些参数。

2.连接管理模块:启动监听,监听连接请求

3.连接进程模块:可以理解为线程池

4.用户模块:检验用户,令牌和权限

5.命令分发器:处理不同类型的请求

6.查询缓存模块:做缓存处理,做查询的cache,可以理解为一个Map,查询语句为key,结果值为value

7.日志记录模块

8.命令解析器(parser):对于不同类型的sql语句进行处理分发,select:查询优化器,dml:表变更模块,ddl:表维护模块,rep:复制模块(主从复制),status:状态模块。

9.访问控制:

10.表管理模块:

11.存储引擎接口:和Storage Engines打交道

直接来到Storage Engines,这讲的最多的就是引擎了,如:

Myisam、Innodb、Faicon、Memory、Archive等等引擎

而我们常用的是Innodb和Myisam这两种,这两种索引最直接的区别,可以从采用对应引擎而生成的数据表文件,进行对比。

阅读全文