Mysql 儲存引擎的選擇

來源:互聯網
上載者:User

1.1 Mysql儲存引擎概述

Mysql支援多種儲存引擎,在處理不同類型的應用時,可以通過選擇不同的儲存引擎提高應用的效率,或者提供靈活的儲存。

包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDB Cluster、ARCHIVE、CSV等,其中InnoDB、BDB提供安全事務表,其他引擎都是非事務安全表。

 

1.2 各種儲存引擎的特性

特點

Myisam

BDB

Memory

InnoDB

Archive

儲存限制

沒有

沒有

64TB

沒有

事務安全

 

支援

 

支援

 

鎖機制

表鎖

頁鎖

表鎖

行鎖

行鎖

B樹索引

支援

支援

支援

支援

 

雜湊索引

 

 

支援

支援

 

全文索引

支援

 

 

 

 

叢集索引

 

 

 

支援

 

資料緩衝

 

 

 

支援

 

索引緩衝

 

 

支援

支援

 

資料可壓縮

支援

 

 

 

支援

空間使用

不消耗空間

記憶體使用量

中等

非常高

批量插入速度

非常高

支援外鍵

 

 

 

支援

 

 

最常用的儲存引擎:

1.      
Myisam儲存引擎:每個Myisam在磁碟上儲存成三個檔案。檔案名稱都和表名相同,副檔名分別為.frm(儲存表定義)、.MYD(儲存資料)、.MYI(儲存索引)。資料檔案和索引檔案可以放置在不同目錄,平均分布io,獲得更快的速度。

2.      
InnoDB儲存引擎:具有提交、復原、奔潰恢複能力的事務安全。與Myisam相比,InnoDB的寫效率差一些並且會佔用更多的磁碟空間以保留資料和索引。

 

1.3   
如何選擇合適的引擎

下面是常用儲存引擎適用的環境:

1.      
Myisam:它是在Web、資料倉儲和其他應用環境下最常使用的儲存引擎。

2.      
InnoDB:用於交易處理應用程式,具有更多特性,包括ACID事務特性。

3.      
Memory:所有資料都儲存在Ram中,在需要快速尋找引用和其他類似資料環境下,可以極速訪問。

4.      
Merge:允許Mysql DBA(資料庫管理人)或開發人員將一系列等同的MyISAM表以邏輯方式組合在一起,並作為1個對象引用他們。對於世界倉儲等環境十分合適。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.