MySql儲存引擎選擇

2021-09-20 09:38:04 字數 1372 閱讀 8302

1.儲存引擎簡介

外掛程式式儲存引擎是 mysql 資料庫最重要的特性之一,使用者可以根據應用的需要選擇如何儲存和索引資料、是否使用事務等。mysql 預設支援多種儲存引擎,以適用於不同領域的資料庫應用需要,使用者可以通過選擇使用不同的儲存引擎提高應用的效率,提供靈活的儲存,使用者甚至可以按照自己的需要定製和使用自己的儲存引擎,以實現最大程度的可定製性。mysql 5.0 支援的儲存引擎包括 myisam、innodb、bdb、memory、merge、example、ndb cluster、archive、csv、lackhole、federated 等,其中 innodb 和 bdb 提供事務安全表,其他儲存引擎都是非事務安全表。預設情況下,建立新錶不指定表的儲存引擎,則新錶是預設儲存引擎的,如果需要修改預設的儲存引擎,則可以在引數檔案中設定 default-table-type。檢視當前的預設儲存引擎,可以使用以下命令:

2.儲存引擎選擇

myisam 是 mysql 的預設儲存引擎。myisam 不支援事務、也不支援外來鍵,其優勢是訪

問的速度快,對事務完整性沒有要求或者以 select、insert 為主的應用基本上都可以使用

這個引擎來建立表。

 innodb:用於事務處理應用程式,支援外來鍵。如果應用對事務的完整性有比較高的

要求,在併發條件下要求資料的一致性,資料操作除了插入和查詢以外,還包括很多的更新、

刪除操作,那麼 innodb 儲存引擎應該是比較合適的選擇。innodb 儲存引擎除了有效地降低

由於刪除和更新導致的鎖定,還可以確保事務的完整提交(commit)和回滾(rollback),

對於類似計費系統或者財務系統等對資料準確性要求比較高的系統,innodb 都是合適的選

擇。 memory:將所有資料儲存在 ram 中,在需要快速定位記錄和其他類似資料的環境

下,可提供極快的訪問。memory 的缺陷是對錶的大小有限制,太大的表無法 cache 在內

存中,其次是要確保表的資料可以恢復,資料庫異常終止後表中的資料是可以恢復的。

memory 表通常用於更新不太頻繁的小表,用以快速得到訪問結果。

 merge:用於將一系列等同的 myisam 表以邏輯方式組合在一起,並作為乙個物件

引用它們。merge 表的優點在於可以突破對單個 myisam 表大小的限制,並且通過將不同

的表分布在多個磁碟上,可以有效地改善merge表的訪問效率。這對於諸如資料倉儲等vldb

環境十分適合。

mysql儲存引擎選擇

常用的儲存引擎為myisam和innodb,其它引擎有ndb cluster merge memory等等。myisam是mysql的預設搜尋引擎,其中的每乙個表都被存放為三個檔案 frm表結構資訊 myd資料檔案 myi索引檔案。myisam支援b tree索引 r tree索引和full tex...

MySQL儲存引擎 選擇

mysql有多種儲存引擎 myisam innodb merge memory heap bdb berkeleydb example federated archive csv blackhole。mysql支援數個儲存引擎作為對不同表的型別的處理器。mysql儲存引擎包括處理事務安全表的引擎和處...

mysql儲存引擎的選擇

資料記錄 假設,對於來自中心 交換機的所有 呼叫,都是要使用mysql進行實時的資料記錄 logging 或者,apache中已經安裝了mode log sql模組,可以將web站點的所有訪問資訊直接記錄到表中,那麼這類應用中,熟讀了能是最重要的設計指標,沒人希望資料庫因此陷入瓶頸狀態,myisam...