MySQL数据库会在data目录下面建立一个以数据库为名的文件夹,用来存储数据库中的表文件数据。不同的数据库引擎,每个表的扩展名也不一样,例如:MyISAM用“.MYD”作为扩展名,Innodb用“.ibd”,Archive 用“.arc”,CSV 用“.csv

2.2.1 ".frm"文件

无论是那种存储引擎,创建表之后就一定会生成一个以表明命名的'.frm'文件。frm文件主要存放与表相关的数据信息,主要包括表结构的定义信息。当数据库崩溃时,用户可以通过frm文件来恢复数据表结构。

2.2.2 ".MYD"

“.MYD”文件是MyISAM存储引擎专用,存放MyISAM表的数据。每一个MyISAM表都会有一个“.MYD”文件与之对应,同样存放于所属数据库的文件夹下,和“.frm”文件在一起。

2.2.3 ".MYI"

“.MYI”文件也是专属于MyISAM存储引擎的,主要存放MyISAM表的索引相关信息。对于MyISAM存储来说,可以被cache 的内容主要就是来源于“.MYI”文件中。每一个MyISAM表对应一个“.MYI”文件,存放于位置和“.frm”以及“.MYD”一样。

2.2.4 “.ibd”文件和ibdata文件

这两种文件都是存放Innodb数据的文件,之所以有两种文件来存放Innodb的数据(包括索引),是因为Innodb的数据存储方式能够通过配置来决定是使用共享表空间存放存储数据,还是独享表空间存放存储数据。独享表空间存储方式使用“.ibd”文件来存放数据,且每个表一个“.ibd”文件,文件存放在和MyISAM数据相同的位置。如果选用共享存储表空间来存放数据,则会使用ibdata文件来存放,所有表共同使用一个(或者多个,可自行配置)ibdata文件。

ibdata文件可以通过innodb_data_home_dir(数据存放目录)和innodb_data_file_path(配置每个文件的名称)两个参数配置组成

innodb_data_file_path中可以一次配置多个ibdata文件#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend 配置方式

共享表空间以及独占表空间都是针对数据的存储方式而言的。

共享表空间:  某一个数据库的所有的表数据,索引文件全部放在一个文件中。

独占表空间:  每一个表都将会生成以独立的文件方式来进行存储,每一个表都有一个.frm表描述文件,还有一个.ibd文件。其中这个文件包括了单独一个表的数据内容以及索引内容。

两者对比

(1.)共享表空间:

优点: 可以放表空间分成多个文件存放到各个磁盘上。数据和文件放在一起方便管理。

缺点: 所有的数据和索引存放到一个文件中,多个表及索引在表空间中混合存储,这样对于一个表做了大量删除操作后表空间中将会有大量的空隙,特别是对于统计分析,日值系统这类应用最不适合用共享表空间。

(2.)独立表空间: 优点:

  1. 每个表都有自已独立的表空间。

  2. 每个表的数据和索引都会存在自已的表空间中。

  3. 可以实现单表在不同的数据库中移动。

  4. 空间可以回收 a)  Drop table操作自动回收表空间,如果对于统计分析或是日值表,删除大量数据后可以通过:altertable TableName engine=innodb;回缩不用的空间。   b) 对于使用独立表空间的表,不管怎么删除,表空间的碎片不会太严重的影响性能,而且还有机会处理。

缺点:单表增加过大,如超过100个G。

相比较之下,使用独占表空间的效率以及性能会更高一点

共享表空间和独立表空间之间的转换

show variables like "innodb_file_per_table"; ON代表独立表空间管理,OFF代表共享表空间管理;

修改数据库的表空间管理方式

修改innodb_file_per_table的参数值即可,但是修改不能影响之前已经使用过的共享表空间和独立表空间;

innodb_file_per_table=1 为使用独占表空间 innodb_file_per_table=0 为使用共享表空间

转载来源:http://www.codeforest.cn/article/99

mysql在磁盘中以什么格式文件存储?相关推荐

  1. iphone6php怎么打开,苹果手机中的heic格式文件怎么打开

    苹果手机中的heic格式文件怎么打开?在使用手机拍照时经常会显示图片是heic格式文件,这样会导致图片不仅在手机上打不开,在电脑上也是如此.那么该如何解决呢?下面这篇教程我们就来为大家分享一下,苹果手 ...

  2. 判断某个磁盘中是否有某个文件

    判断某个磁盘中是否有某个文件 package p1; import java.io.*;public class Java_3 {public static void main(String[] ar ...

  3. 在web中打开SVG格式文件

    在web网页中打开SVG格式文件 浏览器:QQ浏览器.火狐浏览器.谷歌浏览器均可 效果图: 第一步:打开 QQ浏览器: 第二步:将 .svg 文件拖入网页栏: 第三步:打开拖入的网页即可.

  4. R语言导入数据文件(数据导入、加载、读取)、使用haven包的read_dta函数导入Stata中的dta格式文件

    R语言导入数据文件(数据导入.加载.读取).使用haven包的read_dta函数导入Stata中的dta格式文件 目录

  5. R语言导入数据文件(数据导入、加载、读取)、haven包的read_spss函数导入SPSS中的sav格式文件

    R语言导入数据文件(数据导入.加载.读取).haven包的read_spss函数导入SPSS中的sav格式文件 目录

  6. R语言导入数据文件(数据导入、加载、读取)、使用haven包的read_sav函数导入SPSS中的sav格式文件

    R语言导入数据文件(数据导入.加载.读取).使用haven包的read_sav函数导入SPSS中的sav格式文件 目录

  7. 每日MySQL之010:导出Delimited-Text格式文件

    导出Delimited-Text格式文件 MySQL有两种方式导出表的数据到Delimited-Text格式文件中,本文简介这两种方式,并解决测试过程中遇到的报错 第一种是使用 mysqldump命令 ...

  8. 生信笔记 | 自定义GSEA分析中的gmt格式文件

    在GSEA分析中,在MSigDB(Molecular Signatures Database)数据库中定义了很多基因集,下载的基因集是gmt格式文件.下载的gmt格式文件,打开后可以看见是下面这个样子 ...

  9. ATS 5.3.0中自定义日志格式文件logs_xml.config解读

    缘起 近来因为公司项目需要,阅读了一部分ATS logging system的源码实现,越发觉得logs_xml.config文件的配置非常重要,而我目前只是实践了一点它的皮毛.为此,根据自己的理解, ...

  10. vim中删除dos格式文件中的^M号的方法以及深度规整文件格式

    在windows平台上开发时, 我们编辑的文件多半是dos格式, 当我们将它们采用xftp或是secureCRT等ssh软件传输到Linux的vim环境下面时, 通常会出现如下令人惨不忍睹的画面: 为 ...

最新文章

  1. C#中使用Monitor类、Lock和Mutex类来同步多线程的执行(转)
  2. 计算机行业越来越卷,AI都会刷LeetCode了,网友:比我强
  3. collection_check_boxes的应用
  4. cmakelist 定义变量
  5. 你是PHP菜鸟,如果......
  6. php自定义能过滤器,过滤器与自定义过滤器的介绍
  7. python自动化开发-[第二十四天]-高性能相关与初识scrapy
  8. 《SQL学习指南》读书笔记四——优雅和粗鲁
  9. 使用JSP做一个小小的项目(一)
  10. JAVA缓存机制浅析
  11. 邮件发信速率控制也很重要
  12. 第十届蓝桥杯省赛C组 c语言
  13. php操作Word之com组件-获取word文档页码和更新目录
  14. 兼容IE的excel下载
  15. 从mysql中日志表查截至时间最后一条记录
  16. final变量存在哪 java_使用Java中的final变量需要注意的地方。
  17. 浅析深究什么是SOA
  18. 从古欧洲的四大族群变迁梳理欧洲两千年历史脉络
  19. iView UI 使用page分页添加跳转按钮-输入页码后点击跳转
  20. 基于JAVA超市后台系统计算机毕业设计源码+系统+lw文档+部署

热门文章

  1. 在微软官方网站”满速”下载Windows10最新系统镜像方法。
  2. 棋盘覆盖问题与可视化代码演示
  3. 【笔记】C++之SLT的常用容器
  4. php dth网络节点,基于 DHT 网络的磁力链接和BT种子的搜索引擎架构
  5. 微信小程序开发之小米商城
  6. Padavan各源码融合教程
  7. 连续自然数之和 C++
  8. video标签 设置autoplay无效
  9. python统计套利_配对交易-低风险统计套利量化交易 Python 实战
  10. LR 杂记--数据分析Analysis