Mysql儲存引擎特性
阿新 • • 發佈:2019-01-04
1、儲存引擎特性
特性 | MySAM | InnoDB | MEMORY |
儲存限制 | 有 | 64TB | 有 |
事務安全 | 不支援 | 支援 | 不支援 |
鎖機制 | 表鎖 | 行鎖 | 表鎖 |
B樹索引 | 支援 | 支援 | 支援 |
雜湊索引 | 不支援 | 不支援 | 支援 |
全文索引 | 支援 | 不支援 | 不支援 |
叢集索引 | 不支援 | 支援 | 不支援 |
資料快取 | 支援 | 支援 | |
索引快取 | 支援 | 支援 | 支援 |
資料可壓縮 | 支援 | 不支援 | 不支援 |
空間使用 | 低 | 高 | N/A |
記憶體使用 | 低 | 高 | 中等 |
批量插入速度 | 高 | 低 | 高 |
支援外來鍵 | 不支援 | 支援 | 不支援 |
此三種引擎應用場合及建議:
1>MyISAM儲存引擎:由於該儲存引擎不支援事務、也不支援外來鍵,所以訪問速度比較快。因此對事務完整性沒有要求並以訪問為主的應用適合該儲存引擎。
2>InnoDB儲存引擎:由於該儲存引擎在事務上有優勢,即支援具有提交、回滾和崩潰恢復能力的事務安裝,所以比MyISAM儲存引擎佔更多的磁碟空間,因此需要進行頻繁的個更新、刪除操作,同時還對事務的完整性要求比較高,需要實現併發控制,此時適合使用該儲存引擎。
3>MEMORY儲存引擎:該儲存引擎使用記憶體來儲存資料,因此該儲存引擎的資料訪問速度快,但是安全上沒有保障。如果應用中涉及資料比較小,需要進行快速訪問,則適合使用該儲存引擎。
注:此文章摘自MySQL資料庫應用從入門到精通第四章第一節