当前位置: 首页 > news >正文

MySQL进阶篇 - 存储引擎

01 MySQL体系结构

【1】索引是在存储引擎层实现的,不同的存储引擎,索引的结构是不一样的。

【2】InnoDB引擎是MySQL5.5版本之后默认的存储引擎。

【3】MySQL体系结构分为客户端和服务器,服务器又分为4个层次。

02 存储引擎简介

【1】引擎:发动机,发动机是一个机器的核心部分。不同的引擎有不同的应用场景,引擎之间是没有好坏之分的。

【2】存储引擎:

   ① 是MySQL中特有的,它是MySQL数据库中存储数据,建立索引,更新/查询数据等技术实现方式。

   ② 不同的存储引擎在存储数据,建立索引,更新/查询数据等时采用的机制是不一样的。

   ③ 存储引擎是基于数据库表的,而不是基于数据库的,也就是说在一个数据库的多张表是可以选择不同的存储引擎的。

【3】展示当前数据库支持的所有存储引擎:show engines;

【4】如何指定存储引擎:create table xx () engine = 存储引擎,... ;

         注意:MySQL5.5之后,不写默认是InnoDB存储引擎。

03 存储引擎特点

03_01 InnoDB

【1】介绍:InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL5.5之后,InnoDB是默认的MySQL存储引擎

【2】特点:

   ① 事务:DML操作遵循ACID模型,支持事务。

   ② 行级锁:提高并发访问性能。

   ③ 外键:支持外键foreign key约束,保证数据的完整性和正确性。

【3】文件:每一个使用InnoDB存储引擎的表,都会有一个表空间文件,这个文件名叫:表名.ibd,这个文件中存储了表结构,表中的数据,索引。

         补充:表结构早期存储在frm文件中,MySQL8.0之后表结构都存储在了sdi这个数据字典中,后来sdi又融入到了ibd表空间文件中。

         参数:innodb_file_per_table,决定到底是多张表共用一个表空间文件,还是每一个表都有自己的表空间文件。目前MySQL8.0中这个开关是打开的,也就意味着,每一张表都对应着一个表空间文件。

【4】InnoDB存储引擎的逻辑存储结构:SQL优化会用到!

03_02 MyISAM

【1】介绍:MySIAM是MySQL早期默认的存储引擎

【2】特点:

   ① 不支持事务,不支持外键

   ② 支持表锁,不支持行锁

   ③ 访问速度快

【3】文件:

   ① xxx.sdi:存储表结构信息

   ② xxx.MYD:存储数据

   ③ xxx.MYI:存储索引

03_03 Memory

【1】介绍:Memory引擎的表数据是存储在内存中的,由于受到硬件问题,或断电问题的影响,只能将这些表作为临时表或缓存使用

【2】特点:

   ① 由于数据都是存储在内存中的,所以访问速度快

   ② 支持hash索引

【3】文件:xxx.sdi:存储表结构信息

03_04 常见的三个存储引擎之间的区别

【面试题】:InnoDB与MyISAM的区别:

     ① InnoBD支持事务,MyISAM不支持事务

     ② InnoDB支持行级锁,MyISAM支持表锁

     ③ InnoDB支持外键,MySIAM不支持外键

04 存储引擎选择


http://www.mrgr.cn/news/41505.html

相关文章:

  • 【计算机科研方法指南】- 读书笔记《学术咸鱼自救指南》+于老师科研课
  • CSS文本外观属性(12个案例+代码实现+效果图)
  • ACP科普:SoS不是救命
  • mindsearch run 本地服务
  • 【网络安全 | Java代码审计】某Blog系统
  • vbs读取excel内容的代码-编辑代码,查找并在以下位置xls文件路径-供大家学习研究参考
  • 【AI知识点】向量空间(vector space)
  • ARTS Week 42
  • Go基础学习10-原子并发包sync.atomic的使用:CSA、Swap、atomic.Value......
  • 传知代码-一键找出图像中物体的角点(论文复现)
  • 《深度剖析:C++中实例化一个对象的必经阶段》
  • javaScript基础知识汇总
  • AR 领域的突破——微型化显示屏为主流 AR 眼镜铺平道路
  • 客厅落地台灯怎么摆放?五款客厅落地台灯款式分享
  • cGANs with Projection Discriminator
  • C0013.Clion中利用C++调用opencv打开摄像头
  • export在shell编程中有什么作用
  • 第 21 章 一条记录的多幅面孔——事务的隔离级别与 MVCC
  • 二分查找算法专题(1)
  • MedQA、MedMCQA、PubMedQA 和 MMLU数据集简介