`
fantom
  • 浏览: 142250 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mysql 结构层次

 
阅读更多
了解MySql必须牢牢记住其体系结构图,Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的。






  1、Connectors指的是不同语言中与SQL的交互

  2、Management Serveices & Utilities: 系统管理和控制工具

  3、Connection Pool: 连接池

  管理缓冲用户连接,线程处理等需要缓存的需求。

  4、SQL Interface: SQL接口

  接受用户的SQL命令,并且返回用户需要查询的结果。比如select from就是调用SQL Interface。


  5、Parser: 解析器。

  SQL命令传递到解析器的时候会被解析器验证和解析。解析器是由Lex和YACC实现的,是一个很长的脚本。

  主要功能:

  a . 将SQL语句分解成数据结构,并将这个结构传递到后续步骤,以后SQL语句的传递和处理就是基于这个结构的 。

  b. 如果在分解构成中遇到错误,那么就说明这个sql语句是不合理的。

  6、Optimizer: 查询优化器

  SQL语句在查询之前会使用查询优化器对查询进行优化。他使用的是“选取-投影-联接”策略进行查询。

  用一个例子就可以理解: select uid,name from user where gender = 1;

  这个select 查询先根据where 语句进行选取,而不是先将表全部查询出来以后再进行gender过滤。

  这个select查询先根据uid和name进行属性投影,而不是将属性全部取出以后再进行过滤。

  将这两个查询条件联接起来生成最终查询结果。

  7、Cache和Buffer: 查询缓存

  如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据。

  这个缓存机制是由一系列小缓存组成的。比如表缓存,记录缓存,key缓存,权限缓存等。

  8、Engine :存储引擎

  存储引擎是MySql中具体的与文件打交道的子系统。也是Mysql最具有特色的一个地方。

  Mysql的存储引擎是插件式的。它根据MySql AB公司提供的文件访问层的一个抽象接口来定制一种文件访问机制(这种访问机制就叫存储引擎)。

  现在有很多种存储引擎,各个存储引擎的优势各不一样,最常用的MyISAM,InnoDB,BDB。

  默认下MySql是使用MyISAM引擎,它查询速度快,有较好的索引优化和数据压缩技术。但是它不支持事务。

  InnoDB支持事务,并且提供行级的锁定,应用也相当广泛。

  Mysql也支持自己定制存储引擎,甚至一个库中不同的表使用不同的存储引擎,这些都是允许的。
  • 大小: 98.6 KB
分享到:
评论

相关推荐

    mysql数据表导出生成xml文件和树形结构

    此外,"将Xml文件以树的形式展示"意味着数据以层次结构呈现,这通常在前端界面或XML解析器中实现。用户可以通过展开和折叠节点来查看和理解数据结构。这种可视化方式有助于快速浏览大量数据和理解数据间的关联。 在...

    MySql 中查询树形结构的全部子项列表 Function

    在MySQL数据库中,处理树形结构的数据是一项常见的任务,特别是在构建层级关系如组织架构、菜单系统或者分类目录时。本文将深入探讨如何在MySQL中查询树形结构的全部子项列表,结合提供的`MySql_Link_Function.sql`...

    深入mysql源码结构的图书

    《深入MySQL源码结构》是一本专为MySQL数据库系统深入学习者设计的图书,它旨在帮助读者理解MySQL的内部工作原理,从而更好地进行数据开发和优化。这本书详细探讨了MySQL的源代码结构,使得读者能够从底层理解这个...

    mysql 递归查询 树型结构 代码逻辑

    ### MySQL 递归查询树型结构的代码逻辑详解 在处理具有层次结构的数据时,例如组织架构、分类信息等场景,经常会遇到需要构建树形结构数据的需求。这种情况下,使用MySQL进行递归查询是一种非常有效的手段。下面...

    MySQL体系结构深入解析

    MySQL的核心架构可以分为以下几个层次: 1. **连接池组件**:负责客户端与服务器之间的连接管理和复用。 2. **管理服务和工具组件**:包括各种管理服务如日志记录、数据备份等。 3. **SQL接口组件**:提供标准SQL...

    mysql体系结构及原理(innodb)

    首先,MySQL的体系结构包括多个层次,从硬件到操作系统,再到数据库管理系统本身。每个层次的性能都会对整个系统造成影响。硬件包括CPU、内存、磁盘(机械磁盘或固态硬盘SSD)、外设、系统总线和网卡。操作系统(OS...

    MySQL索引背后的数据结构及算法原理

    这种结构使得在较浅的层次上就能访问到数据,从而提高了查找速度。 - **B+Tree**:B+Tree是在B-Tree基础上的一种变体,主要用于文件系统和数据库索引中。在B+Tree中,所有数据记录都存储在叶子节点上,而非叶子节点...

    JDCB树状结构与MySQL安装,内附视频讲解

    在JDCB中,每个节点都可以包含子节点和二进制数据,形成一种类似于文件系统的层次结构。这种结构对于处理复杂的数据组织,如大型文件系统、数据库备份或嵌入式系统的存储管理,非常有用。JDCB的设计目标是高效、灵活...

    MySQL绪论 是一种比层次模型更具普遍性的结构

    层次模型以树状结构表示数据,适合展现具有层级关系的数据,但对非层次结构的表示有限。网状模型则更普遍,可以描述更复杂的实体关系,但结构和编程较为复杂。关系模型,如MySQL所采用的,是最常见的数据模型,以二...

    MySQL数据库:数据模型的应用层次.pptx

    本篇将深入探讨数据模型的应用层次及其在MySQL数据库中的重要性。 首先,我们要理解数据模型的基本概念。数据模型是描述数据结构、数据操作和数据约束的框架,它是数据库系统的基础。数据模型不仅包含数据的逻辑...

    MySQL数据库:逻辑模型的结构分类.pptx

    MySQL数据库逻辑模型的结构分类 逻辑模型的结构分类是数据库设计中的一个重要概念,它对应不同的模型结构,有助于更好地组织和管理数据。在本文中,我们将详细介绍逻辑模型的结构分类,包括层次模型、网状模型、...

    在java中 遍历mysql中的树形结构

    在Java中遍历MySQL数据库中的树形结构是一项常见的任务,尤其是在处理组织结构、文件系统或任何具有层次关系的数据时。本文将深入探讨如何利用Java语言和MySQL数据库来实现这一功能,解析给定代码片段,并提供一种...

    MySQL多层级结构-树搜索介绍

    MySQL中的多层级结构通常用于表示具有父子关系的数据,如组织架构、分类目录、评论系统等。树搜索是一种处理这类数据的有效方法,它利用了数据库表中的额外字段来快速定位和操作树状结构中的节点。 在描述中提到的...

    2020最新mysql数据库地理位置数据,包含省市区街道,及编码,数据结构到街道

    在描述中提到的“数据结构到街道”,这通常意味着数据被组织成层次结构,例如:国家 -> 省 -> 市 -> 区 -> 街道。在数据库设计中,这可能表现为多级关联的表格,每个级别(省、市、区、街道)都有独立的表,并通过...

    从根儿上理解MySQL.pdf

    《从根儿上理解MySQL.pdf》一书深入浅出地揭示了MySQL的核心技术与内部工作原理,为读者打开了一扇通向数据库深层次知识的大门。 本书并非入门级别的指导手册,而是为那些已经具备了基本数据库操作和编程知识的读者...

    MySQL-进阶.pdf

    MySQL的体系结构可以分为以下几个层次: - **连接层**:最上层包括客户端和服务端的连接处理、授权认证等,确保数据传输的安全。 - **服务层**:提供核心服务功能,如SQL解析、查询缓存、优化等。 - **引擎层**:...

Global site tag (gtag.js) - Google Analytics