一、定义数据库和实例

数据库:

物理操作系统文件或其他形式文件类型的集合。数据库文件可以是frm、MYD、ibd 结尾的文件。

从概念上来说,数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器的数据集合;

实例:

MySQL数据库由后台进程以及一个共享内存区组成。共享内存可以被运行的后台线程所共享。 需要注意的是,数据库实例才是真正用于操作数据库文件的。

从概念上来说,数据库实例是程序,是位于用户于操作系统之间的一层数据管理软件,用户对数据库数据的任何操作,包括数据库定义、数据查询等都在实例下进行,应用程序只有通过数据库实例才能和数据库打交道。

PS:MySQL是一个单进程多线程架构的数据库。也就是说MySQL数据库实例在系统中表现形式就是一个进程。

二、MySQL体系结构

根据上图可以看出,MySQL由以下几个部分组成:

1. 连接池组建

2. 管理服务和工具组建

3. SQL接口组件(SQL Interface)

4. 查询分析器(Parser)

5. 优化器组件(Optimizer)

6. 缓冲组件(Cache & Buffer)

7. 插件式存储引擎(Pluggable Storage Engines)

8. 物理文件 (File Sysgtem & Logs)

三、MySQL存储引擎

MySQL与其他数据库对比等一大特点就是独有的插件式体系结构,而每存储引擎都有各自的特点,能够根据具体的业务或者应用场景建立不同的存储引擎表。

下面简单的介绍以下MySQL几款常见的存储引擎:

1、InnoDB存储引擎:

InnoDB存储引擎支持事务,设计目标主要面向OLTP应用,特点是行锁设计、支持外键。PS:MySQL5.6+开始支持全文索引。

2、MyISAM存储引擎:

MyISAM存储引擎不支持事务、表锁设计,支持全文索引,主要面向一些OLAP数据库应用。

3、NDB存储引擎:

NDB存储引擎是一款集群存储引擎,特点是将数据全部放在内存中(MySQL5.1+开始可以将非索引数据放在磁盘上)因此主键查找的数据快,通过添加数据存储节点,可以线性的提高数据库性能,是高可用,高性能的集群系统。

4、Memory存储引擎:

Memory存储引擎将表中所有的数据放置内存中,如果数据库重启或者崩溃,数据将消失。Memory所有默认使用哈希索引。

5、Archive存储引擎:

只支持insert 和 select操作, 使用zlib算法将数据行(row)压缩存储。 非常适合存储归档数据,如日志信息。

6、Federated

7、Maria

……

mysql n 存储结构,MySQL体系结构和存储引擎概述相关推荐

  1. mysql高级(一)体系结构、存储引擎与存储过程

    1.体系结构 1) 连接层 主要完成一些类似于连接处理.授权认证.及相关的安全方案.在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程.同样在该层上可以实现基于SSL的安全链接.服务器也会 ...

  2. mysql 存储 结构,mysql目录与存储结构(一)

    mysql索引与存储结构(一) 首先从一个问题说起. 问题现象: 查询语句如下: -- sql1 SELECT w.wid, w.rid FROM warestock w JOIN product p ...

  3. 假设以邻接矩阵作为图的存储结构_图的存储

    因为图的结构特点,使得其在存储.遍历也相对复杂一些. 邻接矩阵存储图 最简单的方式就是将图的顶点用一维数组存储进来,然后将边信息存储在二维矩阵中,这两个数组合称为图的邻接矩阵(Adjacency Ma ...

  4. pg数据库表存放在哪里_超详细的PG数据存储结构--逻辑结构和物理存储总结,值得收藏...

    概述 今天主要讲讲PG的数据结构,PG数据存储结构分为:逻辑结构和物理存储. 其中逻辑存储结构是内部的组织和管理数据的方式.物理存储结构是操作系统中组织和管理数据的方式.逻辑存储结构适用于不同的操作系 ...

  5. 数组是逻辑结构还是存储结构_数据结构之存储方式

    数据结构的存储⽅式只有两种:数组(顺序存储)和链表(链式存储). 这句话怎么理解,不是还有散列表.栈.队列.堆.树.图等等各种数据结构吗? 我们分析问题,⼀定要有递归的思想,⾃顶向下,从抽象到具体.你 ...

  6. 微型计算机的多级存储结构,计算机系统提供多级存储结构,操作系统( )进行管理。...

    答案 查看答案 解析: [解析题]冯?诺依曼计算机工作原理的设计思想是( ). [解析题]Windows 7系统允许(? ??)用户使用一台计算机 [解析题]数据在计算机中是以二进制的形式存储的.() ...

  7. mysql数据库存储引擎和索引的描述_Mysql InnoDB引擎的索引与存储结构详解

    前言 在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的. 而MySql数据库提供了多种存储引擎.用户可以根据不同的需求为数据表选择不同的存储引擎,用户也 ...

  8. mysql默认存储引擎的索引结构是_InnoDB引擎的索引和存储结构

    在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的. 而MySql数据库提供了多种存储引擎.用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根 ...

  9. 【mysql】-【innodb数据存储结构】

    文章目录 数据库的存储结构:页 磁盘与内存交互基本单位:页 页结构概述 页的大小 页的上层结构 页的内部结构 File Header(文件头部)和File Trailer(文件尾部) File Hea ...

最新文章

  1. 怎样更新jar包中的某个class文件??
  2. 统计学习方法|支持向量机(SVM)原理剖析及实现
  3. SVM分类的一个例子
  4. String, StringBuilder 与StringBuffer的区别与联系
  5. mvc框架异常处理机制
  6. frontcon函数用不了_真香警告!用了XLOOKUP再也回不去VLOOKUP了
  7. Postman入门到精通01
  8. Winform 进度条
  9. Practical Mathematical Handwriting
  10. 2.SpringBoot的入门例子
  11. Parallels Desktop 16 升级 macOS Big Sur 无法联网解决方法
  12. 多个android客户端使用的数据库,android – 将Firebase数据库与本地数据库一起使用...
  13. 牛b硬件信息修改大师_比X大师更靠谱?一款真正良心的硬件检测工具
  14. 学生成绩管理系统(C语言实现)
  15. 深度学习-图像数据标注工具使用(LabelImg和BBox)
  16. DEL: 华为无线modem变无线路由器
  17. 日期计算器---日期相减、日期加天数、日期减天数
  18. 软件构造实验一问题解决方法及经验教训
  19. alice 和 bob 一起 van♂卡牌游戏
  20. PS-怎么用ps查看精灵图(雪碧图)的位置?

热门文章

  1. Taro+react开发(71):Taro.nextTick
  2. 前端学习(3247):react的生命周期getSnapBeforeUpdate举例
  3. 前端学习(2686):重读vue电商网站7之登录预校验
  4. 前端学习(1888)vue之电商管理系统电商系统之在sessionStrorage中保存按钮的激活状态
  5. 前端学习(1034):jquery插件-全屏滚动
  6. 前端学习(611):js组成
  7. mybatis学习(42):mybatis的一级缓存
  8. spring学习(33):id和name
  9. 微信h5网页关闭分享以及关闭当前页面
  10. mysql5.7.20中文,ubuntu16.04 mysql5.7.20表中插入中文顯示???的解決方法