文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  通用資料庫伺服器層

18.11.2 通用資料庫伺服器層

MySQL 可插拔儲存引擎是 MySQL 資料庫伺服器中負責執行資料庫實際資料 I/O 操作的元件,並啟用和強制執行針對特定應用程式需求的特定功能集。使用特定儲存引擎的主要好處是,您只會獲得特定應用程式所需的功能,因此資料庫中的系統開銷較少,最終結果是更有效率和更高的資料庫效能。這是 MySQL 一直以擁有如此高的效能而聞名,在業界標準基準測試中與專有的單體資料庫匹敵或擊敗它們的原因之一。

從技術角度來看,儲存引擎中有哪些獨特的支援基礎架構元件?一些關鍵的功能差異包括:

  • 並行性:某些應用程式對鎖定的要求比其他應用程式更精細(例如列級鎖定)。選擇正確的鎖定策略可以減少開銷,進而提高整體效能。這個領域還包括對諸如多版本並行控制或「快照」讀取等功能的支持。

  • 交易支援:並非每個應用程式都需要交易,但對於需要交易的應用程式,有明確定義的需求,例如 ACID 相容性等等。

  • 參考完整性:需要伺服器通過 DDL 定義的外鍵來強制執行關聯式資料庫參考完整性。

  • 實體儲存:這包括資料表和索引的整體頁面大小,以及用於將資料儲存到實體磁碟的格式。

  • 索引支援:不同的應用程式情境往往會受益於不同的索引策略。每個儲存引擎通常都有自己的索引方法,儘管有些(例如 B 樹索引)幾乎在所有引擎中都很常見。

  • 記憶體快取:不同的應用程式對某些記憶體快取策略的反應比其他策略更好,因此儘管某些記憶體快取在所有儲存引擎中都是通用的(例如用於使用者連線的快取),但其他快取僅在啟用特定儲存引擎時才被唯一定義。

  • 效能輔助:這包括用於並行操作的多個 I/O 執行緒、執行緒並行性、資料庫檢查點、大量插入處理等等。

  • 其他目標功能:這可能包括對地理空間操作的支援、對某些資料操作的安全限制以及其他類似功能。

每組可插拔儲存引擎基礎架構元件都旨在為特定應用程式提供一組有選擇性的優點。相反地,避免使用一組元件功能有助於減少不必要的開銷。因此,了解特定應用程式的需求並選擇正確的 MySQL 儲存引擎可以對整體系統效率和效能產生巨大影響。