MySQL体系结构和存储引擎概述
MySQL体系结构和存储引擎概述
一、定义数据库和实例
数据库:
物理操作系统文件或其他形式文件类型的集合。数据库文件可以是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体系结构和存储引擎概述的更多相关文章
- MySQL技术内幕读书笔记(一)——Mysql体系结构和存储引擎
目录 MySQL体系结构和存储引擎 定义数据库和实例 MYSQL体系结构 MYSQL存储引擎 MySQL体系结构和存储引擎 定义数据库和实例 数据库:物理操作系统文件或者其他形式文件类型的结合.在MY ...
- MySQL 体系结构及存储引擎
MySQL 原理篇 MySQL 索引机制 MySQL 体系结构及存储引擎 MySQL 语句执行过程详解 MySQL 执行计划详解 MySQL InnoDB 缓冲池 MySQL InnoDB 事务 My ...
- 详解mysql体系结构和存储引擎
概述 之前整理的一些mysql方面内容,适合做备忘,因为我基本不会去记这些概念性的东西,大家做个了解就可以了. 一.定义数据库和实例 1.数据库: 物理操作系统文件或其他形式文件类型的集合. 在MyS ...
- MySQL体系结构与存储引擎
MySQL 体系结构 先看 MySQL 数据库的体系结构,如下图所示. MySQL 体系结构由 Client Connectors 层.MySQL Server 层及存储引擎层组成. Client C ...
- MySQL笔记(1)---MySQL体系结构和存储引擎
1.前言 本系列记录MYSQL数据库的一些结构和实现特点,方便查询. 2.基本概念 数据库:物理操作系统文件或者其他形式文件类型的集合.MySQL中数据库文件可以是frm.MYD.MYI.ibd结尾的 ...
- MySQL技术内幕InnoDB存储引擎(一)——MySQL体系结构和存储引擎
1.数据库和实例 数据库(database)和实例(instance)不能混淆. 什么是数据库 数据库是物理操作系统文件或其他文件类型的集合.说白了,就是存储着的文件,不会运行起来,只能被实例增删改查 ...
- MySQL 体系结构和存储引擎
数据库: 物理操作系统文件或其他形式文件类型的集合 实例: MySQL数据库向后台线程以及一个共享内存区组成,共享内存可以被运行的后台线程所共享 MySQL 数据库实例在某统上的表现就是一个进程. M ...
- 【MySQL】(一)MySQL 体系结构和存储引擎
1.1.定义数据库和实例 数据库:物理操作系统文件或其他形式文件类型的集合.在MySQL数据库中,数据库文件可以是frm.MYD.MYI.ibd结尾的文件. 实例:MySQL数据库由后台线程以及一个共 ...
- 第1章 MYSQL 体系结构和存储引擎
一.定义数据库和实例 在集群的条件下,存在单个数据库对应多个实例 二.Mysql 体系结构 三.Mysql 存储引擎及各存储引擎之间的比较 命令:show engines; 四.连接 MySQL 4. ...
随机推荐
- 一个linux 4.9,4.14内核的bbr带宽估计偏低问题
linux 4.9内核,bbr的带宽估计问题. 一个正常的bbr流量图: 对应的ttl图形: 一个异常的bbr流量图: 可以看出,异常的bbr流量图,出现了一个很低的带宽,且稳定在这个带宽10s左右, ...
- c++冒号作用
转自http://www.360doc.com/content/13/0605/11/3373961_290615318.shtml 1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bi ...
- # 20175213 2018-2019-2 《Java程序设计》第1周学习总结
在本周的java学习中,我收获了很多也遇到了很多的困难1.在寒假的预学习中,因为没能完全的安好虚拟机,导致在本周的学习一开始,虚拟机就崩溃了,所以又重新开始重头安装虚拟机.但因为网速等各种问题,虚拟机 ...
- C语言递归函数讲解
递归函数是什么? 是函数.................... 你可以把它理解成是for循环与死循环的结合的函数.简单的说:递归函数是有条件终止的死循环函数: 死循环函数这里是指在函数体中调用自身: ...
- URL和URI
(一)URL和URI是什么 1.URL(Universal Resource Locator) 是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址. ...
- svg旋转动画
<!doctype html><html><head> <title>test</title> <meta charset=" ...
- web.xml hello1代码分析
在“Web页”节点下,展开WEB-INF节点,然后双击web.xml文件进行查看. 上下文参数提供Web应用程序所需的配置信息.应用程序可以定义自己的上下文参数.此外,JavaServer Faces ...
- Jupyter Notebook 的快捷键
原文:http://blog.csdn.net/lawme/article/details/51034543 Jupyter Notebook 的快捷键 Jupyter Notebook 有两种键盘输 ...
- [leetcode]42. Trapping Rain Water雨水积水问题
Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...
- 获奖感想和Java学习总结
获奖感想和Java学习总结 一.获奖感想 能成为小黄衫第二批的成员之一,我感到非常荣幸.我在对老师给予我的鼓励与肯定感到欣喜之余,更多的是感受到了一种鞭策与期望.小黄衫不仅仅是对我的一种奖励,更是激励 ...