Index
InnoDB 頁面可以包含來自不同索引的數據嗎?
(在這個問題中,我假設一個表的數據實際上是一個索引(
PRIMARY
),所以我不區分錶數據和列索引)我已經壓縮了一個“舊”的 InnoDB 表(通過空 ALTER TABLE),並通過該
mysql.innodb_index_stats
表觀察了索引在之前和之後所佔用的空間。大小減小(對於某些索引,顯著);這就引出了一個問題:單個 InnoDB 頁面可以包含來自不同索引的數據嗎?
沒有一個頁面只能保存來自單個索引的記錄。請參閱:innodb page header docs 長話短說 - 您有一個 PAGE_INDEX_ID 欄位,它是頁面所屬索引的標識符。
問候,
喬尼