mysql 逻辑架构

1、mysql是基于网络的客户端/服务器架构,服务器上层是连接线程,解析器,查询缓存,下层是存储引擎。

2、每个客户端连接,服务器都有一个对应的线程,这个线程只为这个连接查询服务,高版本的mysql支持线程池,使用少量的线程服务大量的连接。

3、服务器收到请求,会解析查询,建立解析树,然后对其优化,包括重写查询,决定表的读取顺序,选择合适的索引等。当然用户可以使用特殊的关键字提示优化器,影响优化器的决策。通过explain或者desc ,可以查询服务器是怎么优化的。对于select语句,mysql会建立查询缓存,mysql先检查查询缓存,如果能命中,直接在查询缓存中取数据。否则,进行解析,优化,执行的过程。

原文地址:https://www.cnblogs.com/nzbbody/p/4542150.html