Mysql存儲引擎--MyISAM與InnoDB的底層數據結構

mysql存儲引擎MyISAM與InnoDB的底層數據結構的區別主要有,在磁盤上存儲的文件以及存儲索引以及組織存儲索引的方式不一樣;mysql

MyISAM索引文件和數據文件是分離的(非彙集),索引的葉節點存放的是對應索引在文件系統中的數據地址編碼,好比說查找id=49的元素時,是先索引樹查詢到49對應的數據文件地址,而後再拿着地址在數據文件中取出對應的數據,sql

MyISAM存儲引擎,主鍵索引跟非主鍵索引的結構是同樣的都是以下所示的存儲方式;存儲在磁盤上的文件也是對應的三個文件;數據庫

 

 

MyISAM索引文件在數據庫中存放的對應表的磁盤文件有*.frm,*.MYD,*.MYI結尾的三個文件;數據結構

frm文件是存放的表結構,表的定義信息;編碼

MYD文件是存放着表中的數據;spa

MYI文件存放着表的索引信息;blog

---索引

InnoDB存儲引擎im

InnoDB存儲引擎在磁盤中存放的對應的表的磁盤文件有*.frm,*.ibd這兩個文件;數據

frm文件是存放表結構,表的定義信息;

ibd文件是存放 表中的數據、索引信息;

下面是主鍵索引的組織結構,InnoDB的主鍵索引跟非主鍵索引的組織結構不同

 

相關文章
相關標籤/搜索