数据库 
首页 > 数据库 > 浏览文章

MySQL MyISAM默认存储引擎实现原理

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

默认MyISAM的表会在磁盘中产生3个文件:.frm(表结构文件)、.MYD(数据文件)、.MYI(索引文件)

  可以在创建的时候指定数据文件和索引文件的存储位置,只有MyISAM表支持:

  •     DATA DIRECTORY [=] 数据保存的绝对路径
  •     INDEX DIRECTORY [=] 索引文件的绝对路径

  MyISAM单表最大支持的数据量为2的64次方跳记录  

  每个表最多可以建立64个索引

  如果是复合索引,每个复合索引最多包含16个列,索引值最大长度是1000B

  MyISAM引擎的存储格式:

  •     定长(FIXED 静态) :是指字段不包含VARCHAR/TEXT/BLOB
  •     动态(DYNAMIC) :只要字段中包含了VARCHAR/TEXT/BLOB
  •     压缩(COMPRESSED):muisampack创建

InnoDB存储引擎:

  设计遵循ACID模型,支持事务,具有从服务崩溃中恢复的能力,能够最大限度保护用户的数据

  支持行级锁,可以提升多用户并发时的读写性能

  InnoDB拥有自己独立的缓冲池,常用的数据和索引都在缓存中

  对于INSERT、UPDATE、DELETE操作,InnoDB会使用一种change buffering的机制来自动优化,还可以提供一致性的读,并且还能够缓存变更的数据,减少磁盘I/O,提高性能

  创建InnoDB表之后会产生两个文件:

  •     .frm表结构文件
  •     .ibd 数据和索引存储表空间中

  所有的表都需要创建主键,最好是配合上AUTO_INCREMENT,也可以放到经常查询的列作为主键

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:MySQL数据库对敏感数据加密及解密的实现方式
下一篇:MySQL主从配置学习笔记
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap