Innodb学习之MySQL体系结构
数据库和数据库实例
数据库是所有文件的集合,是依照某种数据模型组织起来的数据集合。
而数据库实例,指的是程序,是位于用户与操作系统之间的一层数据管理软件,用户通过数据库实例对数据库进行操作。
数据库不是文件系统,它区别于文件系统的不同之处在于,数据库需要支持锁、支持事务等。
MySQL体系结构
在MySQL 5.1中,MySQL AB引入了新的插件式存储引擎体系结构,允许将存储引擎加载到正在运新的MySQL服务器中。

MySQL由图中描述的这几个部分组成:
连接池组件,实际编码中应该接触很多
管理服务和工具组件
SQL接口组件
查询分析器组件
优化器组件
缓冲组件
插件式存储引擎<存储引擎是基于表的、使用较为广泛的是Innodb存储引擎>
物理文件
插件式存储引擎式架构是MySQL区别于其它数据库的地方,该架构中,存储引擎的底层物理结构可以按照引擎开发者的意愿来实现。
MySQL各存储引擎特性
Innodb存储引擎
它是我们这个系列的主角,也是日常开发中,使用最多的存储引擎;它主要的设计目标是为了支持那些面向在线事务处理(OLTP)的应用,主要的特点是行锁设计,支持外键。
Innodb存储引擎将数据存放于逻辑表空间中,这个表空间由Innodb存储引擎自身进行管理,对上层用户透明,它还支持将每个表单独存放到独立的 .idb 文件中。
Innodb支持行多版本技术,以提高并发,后续章节将细说。除此之外Innodb还提供了插入缓冲(insert buffer)、二次写、自适应哈索引、预读等提高性能和可用性的功能。
对于表中数据行的存储,MySQL使用聚集索引,就是说每行数据根据主键按序存储;值得一提的是,MySQL的辅助索引虽然也是按辅助索引的键值排序存放,但是辅助索引不存储完整的数据行,只是存储了到主键的映射,使用辅助索引不可避免的最后会进行一次离散读,获取到实际的行数据。
MyISAM
它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。支持全文索引,对基于MyISAM引擎的表,MySQL只缓存.MYI索引文件, 而.MYD数据文件由操作系统本身来维护;需要注意的是区别于别的存储引擎,"它不支持事务",不支持行锁设计,主要面向[OLAP] 数据库应用。
OLAP(Online analytical processing),即联机分析处理,主要用于支持企业决策管理分析。
BDB:
可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。
Memory
将所有数据保存在RAM中,它使用哈希索引,可以提供常熟时间的访问,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。存在的风险是,如果服务器宕机,将导致内存中的数据丢失。此外还存在使用上的限制,它只支持表锁性能较差,不支持BLOB、TEXT类型字段。
Archive
为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。Archive只支持insert 和select ,它使用zlib算法将数据行压缩,它非常适合存储归档数据、日志信息;它使用行锁来实现高并发的插入操作,但是它本事不是事务安全的存储引擎。他的设计目标主要是为了,提供高速的插入和压缩功能。
Federated
Federated不存放数据,它只是指向一台远程MySQL数据库服务器上的表类似Oracle的透明网关。它能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。
时至今日MySQL已经有了很多的存储引擎,官方引擎以及强大的第三方引擎,我们可以根据具体的应用场景选择适当的存储引擎。
Innodb学习之MySQL体系结构的更多相关文章
- MySQL学习笔记-MySQL体系结构总览
MySQL体系结构总览 不管是用哪种数据库,了解数据库的体系结构都是极为重要的.MySQL体系结构主要由数据库和数据库实例构成. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件 ...
- MySQL 体系结构以及各种文件类型学习汇总 (转)
1,mysql体系结构 由数据库和数据库实例组成,是单进场多线程架构. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件可以是frm.myd.myi.ibd等结尾的文件,当使用n ...
- (1.3)学习笔记之mysql体系结构(C/S整体架构、内存结构、物理存储结构、逻辑结构)
目录 1.学习笔记之mysql体系结构(C/S架构) 2.mysql整体架构 3.存储引擎 4.sql语句处理--SQL层(内存层) 5.服务器内存结构 6.mysql如何使用磁盘空间 7.mysql ...
- (1.1)学习笔记之mysql体系结构(内存、进程、线程)
关键词:mysql体系结构 参考:https://www.cnblogs.com/zhoubaojian/articles/7866292.html 一.mysql体系架构概述 1.mysql体系结构 ...
- MySQL体系结构以及各种文件类型学习
1,mysql体系结构 由数据库和数据库实例组成,是单进场多线程架构. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件可以是frm.myd.myi.ibd等结尾的文件,当使用n ...
- MySQl学习-——Mysql体系结构与Mysql存储引擎
Mysql体系结构与Mysql存储引擎 Mysql体系结构 mysql体系结构图:
- MySQL技术内幕InnoDB存储引擎(一)——MySQL体系结构和存储引擎
1.数据库和实例 数据库(database)和实例(instance)不能混淆. 什么是数据库 数据库是物理操作系统文件或其他文件类型的集合.说白了,就是存储着的文件,不会运行起来,只能被实例增删改查 ...
- 第四课(1)——MySQL体系结构
学习目标 一.MySQL体系结构 二.MySQL内存结构 三.MySQL文件结构 四.Innodb体系结构 MySQL体系结构 一.MySQL体系结构图 1.Mysql是由SQL接口,解析器,优化器, ...
- MySQL体系结构与存储引擎
MySQL 体系结构 先看 MySQL 数据库的体系结构,如下图所示. MySQL 体系结构由 Client Connectors 层.MySQL Server 层及存储引擎层组成. Client C ...
- 前端学习数据库MYSQL
这篇文章主要写了 1.数据库MYSQL 2.基本上会遇到的所有SQL语句 数据库可视化软件------Navicat 数据库里边存放的是表,表与表之间是有关联的,而且可以对表进行相关操作(增,删,改, ...
随机推荐
- TiKV占用内存超过的解决过程
TiKV占用内存超过的解决过程 背景 为了后去TiDB的极限数据. 晚上在每台服务器上面增加了多个TiKV的节点. 主要方式为: 每个NVME的硬盘增加两个TiKV的进程. 这样每个服务器两个磁盘, ...
- [转帖]PostgreSQL 的性能调优方法
https://juejin.cn/post/7119489847529570334 浅谈PostgreSQL的性能调校 PostgreSQL的性能调校是指调校数据库以提高性能和快速访问数据:我们可以 ...
- [转帖]Alertmanager 部署配置
https://www.cnblogs.com/winstom/p/11940570.html 目录 前言 源码安装 配置 启动 配置prometheus监控Alertmanager 修改promet ...
- [转帖]Xargs用法详解
https://www.cnblogs.com/cheyunhua/p/8796433.html 1. 简介 之所以能用到这个命令,关键是由于很多命令不支持|管道来传递参数,而日常工作中有有这个必要, ...
- [转帖]MIPS和ARM授权差异引起的龙芯路线变迁
https://zhuanlan.zhihu.com/p/99807721 一.MIPS和ARM授权的异同 MIPS授权和ARM授权都分为处理器核授权(Core License)和架构授权(Archi ...
- [转帖]龙芯总强调同频性能,是因奔腾4要到25+GHz才比得上酷睿11代单核
https://baijiahao.baidu.com/s?id=1734320620568707041 闲话不说,先上图,是SPEC CPU 2006 int(单任务)测试的成绩: 上图中的成绩 ...
- [转帖]oracle如何删除datafile,误删除Oracle datafile 无法打开数据库
1.在Oracle open方式下,直接从OS上删除了datafile文件. rm /u02/rmants.dbf 2.数据库关闭后,无法打开数据库,只能到mount状态. SQL> alter ...
- Linux下面rsync 实现 完全一致的同步方法
1. 在某些特殊的linux机器上面, 比如龙芯后者是飞腾服务器,部分工具不太好用, 需要使用x86弄好之后进行同步过去, 这个时候scp 最简单但是网络流量非常大, 不如使用rsync, rsync ...
- frp 的简单使用
在出差现场. 开着VPN 就没法用出差现场的网络, 想了想 好像 只能用 frp 来搞一下比较好 借了下同事的vps 进行相应的处理 进行简单的内容穿透工作. 1. 下载相关的文件. wget htt ...
- StorageClass 简单学习
StorageClass 简单学习 学习资料来源 https://www.jianshu.com/p/5e565a8049fc https://zhuanlan.zhihu.com/p/2895019 ...