一、常用類型
| 存儲(chǔ)引擎 | 事務(wù) | 鎖顆粒 | 主要應(yīng)用 | 忌用 |
|---|---|---|---|---|
| MYISAM | 不支持 | 支持并發(fā)插入的表級(jí)鎖 | SELECT,INSERT | 讀寫操作頻繁 |
| MRG_MYISAM | 不支持 | 支持并發(fā)插入的表級(jí)鎖 | 分段歸檔,數(shù)據(jù)倉庫 | 全局查找過多的場景 |
| Innodb | 支持 | 支持MVCC的行級(jí)鎖 | 事務(wù)處理 | 無 |
| Archive | 不支持 | 行級(jí)鎖 | 日志記錄,只支持insert,select | 需要隨機(jī),更新,刪除 |
| Ndb cluster | 支持 | 行級(jí)鎖 | 高可用性 | 大部分應(yīng)用 |
二、特殊類型
| 存儲(chǔ)引擎 | 事務(wù) | 鎖顆粒 | 主要應(yīng)用 | 忌用 |
|---|---|---|---|---|
| CSV | 不支持 | 支持并發(fā)插入的表級(jí)鎖 | 適合做為數(shù)據(jù)交換的中間表 | 索引查詢 |
| BLACKHOLE | 支持所有 | 支持所有 | 用于記錄binlog做復(fù)制的中繼存儲(chǔ) | 存儲(chǔ)數(shù)據(jù) |
| MEMORY | 不支持 | 支持并發(fā)插入的表級(jí)鎖 | 數(shù)據(jù)量小、訪問頻繁的不重要的數(shù)據(jù) | 數(shù)據(jù)量過大,永久存儲(chǔ) |
對這些常用的類型,做簡單說明。
1、CSV類型
- 優(yōu)點(diǎn):
以CSV格式進(jìn)行數(shù)據(jù)存儲(chǔ)(逗號(hào)隔開,引號(hào))
可以對數(shù)據(jù)文件直接編輯(保存文本文件內(nèi)容) - 缺點(diǎn):
所有的列必須都是不能為NULL的
不支持索引(不適合大表,不適合在線處理)
2、MEMORY類型
- 優(yōu)點(diǎn):
使用內(nèi)存當(dāng)存儲(chǔ)介質(zhì),優(yōu)點(diǎn)式響應(yīng)速度快 - 缺點(diǎn):
進(jìn)程崩潰的時(shí)數(shù)據(jù)會(huì)丟失
要求存儲(chǔ)的是長度不變的數(shù)據(jù)
3、BLACKHOLE類型
- 優(yōu)點(diǎn)
BLACKHOLE支持所有類型的索引
記錄binlog做復(fù)制的中繼存儲(chǔ) - 缺點(diǎn)
BLACKHOLE 表不存儲(chǔ)數(shù)據(jù),任何寫入到此引擎的數(shù)據(jù)均會(huì)被丟棄掉, 不做實(shí)際存儲(chǔ)
Insert觸發(fā)器可以正常使用,Update、Delete觸發(fā)器因?yàn)椴淮鎯?chǔ)數(shù)據(jù)不能觸發(fā)
Select語句的內(nèi)容永遠(yuǎn)是空