ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Mysql存储引擎

2019-11-21 17:07:32  阅读:208  来源: 互联网

标签:文件 存储 表名 frm 索引 引擎 Mysql data


Innodb

特性

  • 支持事务处理、支持外键、支持崩溃修复能力和并发控制
  • 从3.23.34开始支持,后面的版本默认存储引擎

数据文件

  1. 共享表空间文件:由参数innodb_data_home_dir和innodb_data_file_path定义,用于存放数据词典和日志等。
  2. frm:存储数据表的框架结构,文件名与表名相同,每个表对应一个同名frm文件,不管MySQL运行在何种操作系统上,使用何种存储引擎,都有这个文件。
  3. idb:使用多表空间存储方式时,用于存放表数据和索引,若使用共享表空间存储则无此文件。

MyISAM

特性

​ 插入数据快,空间和内存使用较低;

数据文件

  1. frm:存储数据表的框架结构,文件名与表名相同,每个表对应一个同名frm文件,不管MySQL运行在何种操作系统上,使用何种存储引擎,都有这个文件。

  2. MYD(my data):存储表数据。

  3. MYI(my index):存储表索引。

  4. log:日志文件

存储格式

  1. 静态表(默认):字段都是非变长的(每个记录都是固定长度的)。存储非常迅速、容易缓存,出现故障容易恢复;占用空间通常比动态表多。
  2. 动态表:占用的空间相对较少,但是频繁的更新删除记录会产生碎片,需要定期执行optimize table或myisamchk -r命令来改善性能,而且出现故障的时候恢复比较困难。
  3. 压缩表:使用myisampack工具创建,占用非常小的磁盘空间。因为每个记录是被单独压缩的,所以只有非常小的访问开支。

MEMORY

特性

  • 默认使用Hash索引,也支持BTREES索引
  • 数据放到内存中,断电或重启容易丢失

数据文件

表实际对应一个磁盘文件,文件名与表名相同,数据全部放在内存中

标签:文件,存储,表名,frm,索引,引擎,Mysql,data
来源: https://www.cnblogs.com/ngrzr/p/11906704.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有