首頁  >  文章  >  資料庫  >  Mysql儲存引擎之Innodb儲存引擎的介紹

Mysql儲存引擎之Innodb儲存引擎的介紹

黄舟
黄舟原創
2016-12-22 16:46:50972瀏覽

在 MySQL 中使用最廣泛的除了 MyISAM 之外,就非 Innodb 莫屬了。 Innodb 做為第三方公司所開發的儲存引擎,和 MySQL 遵守相同的開源 License 協議。

Innodb 之所以能如此受寵,主要是在於其功能方面的較多特點:

1、支持事務安裝

Innodb 在功能方面最重要的一點就是對事務安全的支持,這無疑是讓Innodb成為MySQL最受歡迎的儲存引擎之一的一個非常重要原因。而且實作了 SQL92 標準所定義的所有四個層級(READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ 和 SERIALIZABLE)。對事務安全的支持,無疑讓許多先前因為特殊業務要求而不得不放棄使用 MySQL 的用戶轉向支援
MySQL,以及先前對資料庫選項持觀望態度的用戶,也大大增加了對 MySQL 好感。

2、資料多版本讀取

Innodb 在事務支援的同時,為了確保資料的一致性已經並發時候的效能,透過對 undo信息,實現了資料的多版本讀取。

3、鎖定機制的改良

Innodb 改變了 MyISAM 的鎖定機制,實現了行鎖。雖然 Innodb 的行鎖定機制的實作是透過索引來完成的,但畢竟在資料庫中 99%的 SQL 語句都是要使用索引來做檢索資料的。所以,行鎖定機制也無疑地為 Innodb 在承受高同時壓力的環境下增強了不小的競爭力。

4、實現外鍵

Innodb 實現了外鍵引用此資料庫的重要特性,使在資料庫端控制部分資料的完整性成為可能。雖然許多資料庫系統調優專家都建議不要這樣做,但是對於不少用戶來說在資料庫端加如外鍵控制可能仍然是成本最低的選擇。

除了以上幾個功能上面的亮點之外,Innodb 還有很多其他一些功能特色常常帶給用戶不小的驚喜,同時也為 MySQL 帶來了更多的客戶。在實體儲存方賣弄, Innodb 儲存引擎也和 MyISAM 不太一樣,雖然也有.frm 檔案來存放表結構定義相關的元數據,但是表資料和索引資料是存放在一起的。至於是每個表單獨存放還是所有表存放在一起,完全由使用者來決定(透過特定配置),同時也支援符號連結。

 以上就是Mysql儲存引擎之Innodb儲存引擎的介紹的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn