美文网首页
表和数据在文件系统中的表示

表和数据在文件系统中的表示

作者: zzz_0427 | 来源:发表于2024-06-23 20:46 被阅读0次
    一、mysql8.0中以innodb为存储引擎表结构、数据、索引都存到独立表空间文件ibd(innoDB的缩写)中
    文件
    可以通过mysql8.0及以上自带的ibd2sdi(序列化字典信息)命令查看表元数据信息
    ibd2sdi命令
    表结构信息
    二、数据页
    数据页是数据库中存储数据的基本单元,通常具有固定的大小(例如16KB)。
    每个数据页可以存储多条记录,并且可能包含索引信息以加速数据检索。
    以页作为磁盘和内存之间交互的 基本单位,也就是一次最少从磁盘中读取16KB的内容到内存中,一次最少把内存中的16KB内容刷新到磁盘中。也就是说,在数据库中,不论读一行,还是读多行,都是将这些行所在的页进行加载。也就是说,数据库管理存储空间的基本单位是页(Page),数据库I/0 操作的最小单位是页。一个页中可以存储多个行记录。

    .ibd文件是物理存储层面的实现,而数据页是逻辑层面上的概念。在InnoDB中,.ibd文件内部使用数据页作为存储数据的基本单位,但.ibd文件还包含了InnoDB特有的文件结构和元数据信息。简而言之,.ibd文件是数据页在InnoDB存储引擎中的具体实现形式。


    数据页的大小
    行记录

    在无索引的情况下,行记录以被插入的顺序存储。


    行记录

    其中,记录头里的 record_type 属性,表示记录的类型,其取值有:
    0:普通的用户记录
    1:目录项记录
    2:最小记录
    3:最大记录


    image.png
    image.png

    相关文章

      网友评论

          本文标题:表和数据在文件系统中的表示

          本文链接:https://www.haomeiwen.com/subject/xylrcjtx.html