目录
MySQL 介绍
MySQL最重要、最与众不同的特性是它的存储引擎架构。
这种架构的设计将查询处理及其它系统任务,和数据的存储、提取相分离。
本章概要地描述了MySQL的服务架构、各种存储引擎之间的主要区别,以及这些区别的重要性。
1.1 MySQL 逻辑架构
第一层:不是MySQL所独有的,大多数基于网络的客户端、服务器的工具或者服务都有类似的架构。比如连接处理、授权认证、安全等等。
第二层:MySQL核心服务功能。包括查询解析、分析、优化、缓存以及所有的内置函数,所有跨存储引擎的功能都在这一层实现:存储过程、触发器、视图等。
第三层:包含了存储引擎。存储引擎负责MySQL中数据的存储和提取。
1.1.1 连接管理与安全性
每个客户端连接都会在服务器进程中拥有一个线程,这个连接的查询只会在这个单独的线程中执行。
服务器会负责缓存线程,因此不需要为每一个新建的连接创建或者销毁线程。
当客户端(应用)连接到MySQL 服务器时,服务器需要对其进行认证。
一旦客户端连接成功,服务器会继续验证该客户端是否具有执行某个特定查询的权限。
1.1.2 优化与执行
MySQL会解析查询,并创建内部数据结构(解析树),然后对其进行各种优化,包括重写查询,决定表的读取顺序,以及选择合适的索引等。
优化器并不关心表使用的是什么存储引擎,但存储引擎对于优化查询是有影响的。
对于SELECT 语句ÿ