MySQL逻辑架构概述

1.MySQL逻辑架构

MySQL逻辑架构图

MySQL逻辑架构分四层

1.连接层:主要完成一些类似连接处理,授权认证及相关的安全方案。

2.服务层:在 MySQL据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断,SQL接口,SQL解析,SQL分析优化, 缓存查询的处理以及部分内置函数执行(如日期,时间,数学运算,加密)等等。各个存储引擎提供的功能都集中在这一层,如存储过程,触发器,视图等。

3.引擎层:是底层数据存取操作实现部分,由多种存储引擎共同组成。真正负责MySQL中数据的存储和提取。就像Linux众多的文件系统 一样。每个存储引擎都有自己的优点和缺陷。服务器是通过存储引擎API来与它们交互的。这个接口隐藏 了各个存储引擎不同的地方。对于查询层尽可能的透明。这个API包含了很多底层的操作。如开始一个事物,或者取出有特定主键的行。存储引擎不能解析SQL,互相之间也不能通信。仅仅是简单的响应服务器 的请求。

4.存储层:将数据存储于裸设备的文件系统之上,完成与存储引擎的交互。

参考张冲andy的文章:MySQL逻辑架构概述

MySQL语句执行流程图

2.MySQL存储引擎

查看MySQL中现在提供的存储引擎:

show engines;

查看MySQL现在默认使用的存储引擎:

show variables like '%storage_engine%';

查看某表使用的存储引擎:

show create table 表名;

从上面MySQL逻辑架构图可以看到,MySQL有很多种存储引擎,他们以插件的形式存在,需要那个存储引擎则装上那个存储引擎。
其实在MySQL中主要使用MyISAM引擎和InnoDB引擎。

MyISAM引擎和InnoDB引擎简单对比:

MyISAM引擎 InnoDB引擎
主外键 不支持 支持
事务 不支持 支持
行表锁 表所.不适合高并发 行锁.适合高并发
缓存 只缓存索引 缓存索引和真实数据
表空间
关注点 性能.偏读 事务
默认安装

原文地址:https://www.cnblogs.com/ChangAn223/p/10686639.html

时间: 2024-10-27 06:49:35

MySQL逻辑架构概述的相关文章

mysql 逻辑架构(三层)

1.客户端(主要处理连接,授权认证,安全等). 2.MYSQL服务器层(核心服务功能都在这层,包括,查询解析,分析,优化,缓存以及所有的内置函数,所有跨存储引擎的功能都在这层实现:存储过程,触发器,视图等). 3.存储引擎层(负责MYSQL中数据的存储和提取,服务器通过API与存储引擎进行通信.这些接口屏蔽了不同存储引擎之间的差异.存储引擎不会去解析SQL,InnoDB是个例外,它会解析外键定义.不同的存储引擎间不会相互通信,只是简单的层服务器请求.) mysql 逻辑架构(三层),布布扣,bu

《高性能MySQL》读书笔记--MySQL逻辑架构

一.MySQL逻辑架构 MySQL最重要的.最与从不同的特性是它的存储引擎架构,这种构架的设计将查询处理及其它系统任务和数据的存储/提取相分离. 第一层,服务层,最上层的服务并不是MySQL独有的,大多数基于网络的客户端/服务端的工具或者服务都有类似的架构.主要为请求做连接处理,授权认证,安全等. 第二层,核心层,大多数MySQL的核心服务功能都在这一层,包括查询解析,分析,优化,缓存,以及所有的内置函数(例如日期.时间.数学和加密函数),所有跨存储引擎的功能都在这一层实现:存储过程,触发器,视

Mysql 逻辑架构图及日志系统

1.Mysql逻辑架构图 场景一:一条SQL语句如何执行? 如图显示一条SQL语句的执行过程: 执行器的执行流程: 2.Mysql日志系统 说到日志系统,需要了解几个概念:creash-safe.redo log.binlog.WAL技术. Redo log用于保证crash-safe能力.innodb_flush_log_at_trx_commit =1表示每次事务的redo log 都持久化到磁盘,保证mysql异常重启之后数据不丢失.Sync_binlog=1参数设置为1,表示每次事务的b

MySQL逻辑架构

1.MySQL服务器逻辑架构图 最上层的服务并不是MySQL所独有的,大多数基于网络的客户端/服务器的工具或者服务器都有类似的结构.比如连接处理.授权认证.安全等等.. 第二层架构是MySQL比较有意思的部分.大多数MySQL的核心服务功能都在这一层,包括查询解析.分析.优化.缓存以及所有的内置函数,所有跨存储引擎的功能都在这一层实现:存储过程.触发器.视图等. 第三层包含了存储引擎.存储引擎负责MySQL中数据的存储和提取.和GNU/Linux下的各种文件系统一样,每个存储引擎都有它的优势和劣

MySQL逻辑架构简介

一.逻辑架构图总体概览 和数据库相比,MySQL有点与众不同,他的架构可以在多种不同场景中应用并发挥良好作用,主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其他的系统任务以及数据存储的存储提取相分离,这种架构可以个根据业务的需求和实际需要选择合适的存储引擎. 可分为以下几层: 1.连接层 最上层是一些客户端和连接服务,包括本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信.主要完成一些类似于连接处理.授权认证.及相关的安全方案.在该层上引出了线程池的概念,

MySQL逻辑架构(一)

MySQL 逻辑系统架构: 可以分为连接器,连接池,Sql接口,解释器,优化库,缓冲区,缓存,引擎 MySQL逻辑结构刻意看成二层架构,第一层通常叫做SQL Layer 在数据库系统处理底层数据 包括权限判断,SQL解析执行计划优化,query chche的出理等等第二层就是存储引擎 ,通常叫做 storageEngine Layer 也就是底层数据存取操作的实现部分有多种存储引擎共同组成MySQL存储引擎介绍:MySQL在5.1之前的版本中,存储引擎是需要在MySQL安装的时候就必须和MySQ

MySql 逻辑架构

连接层 当Mysql 启动  等待客户端连接请求,服务器都会新建一个线程处理(如果是线程池的话,则是分配一个空的线程),每个线程独立,拥有各自的内存处理空间,但是,如果这个请求指示查询,没关系,但是若是修改数据,很显然,当两个线程改同一块内存是会引发数据同步问题 连接到服务器,服务器需要进行验证,也就是用户名,ip,密码验证,一但连接成功,还要验证是否具有执行某个特定查询的权限(如 是否允许客户端对某个数据库某个表的某个操作) Sql 处理层 缓存 -- 数据缓存是否开启show variabl

MySQL 配置文件及逻辑架构

配置文件: linux:/etc/my.cnf              默认配置文件:/usr/share/mysql/my-default.cnf windows:my.ini 主要日志文件: 二进制日志log-bin:主从复制. 错误日志log-error:默认是关闭的,  记录严重的警告和错误信息, 每次启动和关闭的详细信息等. 查询日志log:默认是关闭的, 记录查询的sql语句, 如果开启会减低mysql的整体性能, 因为记录日志也是需要消耗系统资源的. 数据文件: frm文件:存放

mysql高级教程(一)-----逻辑架构、查询流程、索引

mysql逻辑架构 和其它数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用.主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离.这种架构可以根据业务的需求和实际需要选择合适的存储引擎. 1.连接层 最上层是一些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信.主要完成一些类似于连接处理.授权认证.及相关的安全方案.在该层上引入了线程池的概念,为通过认证安全接入的客户