一、MyIsam和InnoDB索引實現
????? 對于myisam是通過將索引文件和數據文件單獨存放的,但是一個表的多個索引只存儲在一個文件中,這樣的缺點是如果大量的使用索引,有可能會導致索引文件比數據文件更快的達到其最大大小,以為myisam的存儲會受到操作系統所支持的最大文件的限制。
????? 對于innodb,有兩種方案來存放索引文件和數據文件,第一種(默認)是對于同一個數據庫只使用一個表空間,即所有表的索引文件和數據文件都共享一個存儲空間池,索引文件增加會導致數據文件可用的空間減少,但是該共享空間不受操作系統文件大小的限制,因此可以配置它使用多個文件,可以將其他的磁盤空間作為新部件的方式來擴展。另一種是不同的表使用不同的表空間,這種方式的表空間的大小受限于操作系統文件大小,對于該表的索引文件和數據文件依然是存儲在一個表空間里面的,這種方式會導致增加索引會導致表的大小更快的達到文件的最大大小。