MySQL 基础技术—— MySQL 是如何查询的?

本文介绍了MySQL查询的内部过程,包括连接器、查询缓存、分析器、优化器和执行器的工作原理。连接器负责建立连接和权限验证,查询缓存在特定场景下提高效率,分析器进行词法和语法分析,优化器选择最佳索引方案,执行器执行查询并检查权限。MySQL 8.0已废弃查询缓存功能。
摘要由CSDN通过智能技术生成

一、引子

在日常工作中,我们执行了一个简单的查询语句:

select * from <table_name> where id = 647;

那么,在 MySQL 内部会如何工作呢?

二、架构

首先,MySQL 架构可以分为 Server层Engine层两部分。

Server(服务)层:

涵盖了 MySQL 上层核心服务功能。
包括 “连接器”、“查询缓存”、“分析器”、“优化器”、“执行器”等等。
以及内置功能函数(数学、时间计算等等),触发器、视图等等跨存储引擎的功能都在 Server 层实现。

Engine(引擎)层:

主要负责数据的存储和提取等底层服务。
其实现是插件式的,MySQL 支持 InnoDBMyISAMMemory 等多个存储引擎。
目前,最常用的是 InnoDB 存储引擎。
而从 MySQL 5.5.5 版本开始,InnoDB 成为了默认存储引擎。

可以使用 show engines; 命令来查看各个引擎。

show engines;

几个常用底层存储引擎的简单区别:
InnoDB:支持事务,支

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值