mysql 儲存引擎學習

2022-07-14 10:30:16 字數 788 閱讀 4002

現在我們常用的mysql儲存引擎主要是兩種:innodb and myisam。

1.myisam 

執行效率高

不支援事務

不支援外來鍵

每個myisam在磁碟上儲存成3個檔案,其中檔名和表名都相同,但是副檔名分別為:

2.innodb(當前mysql的預設 儲存引擎)

支援事務:提供具有提交、回滾和崩潰恢復能力的事務安全。

支援外來鍵約束。

支援行級鎖。

對比myisam儲存引擎,innodb的寫處理效率差一些以及會占用更多的磁碟空間來保留資料和索引。

在以下場合下,使用innodb是最理想的選擇:

更新密集的表。innodb儲存引擎特別適合處理多重併發的更新請求。

事務。innodb儲存引擎是支援事務的標準mysql儲存引擎。

自動災難恢復。與其它儲存引擎不同,innodb表能夠自動從災難中恢復。

外來鍵約束。mysql支援外來鍵的儲存引擎只有innodb。

支援自動增加列auto_increment屬性。

3.memory

採用的邏輯儲存介質是系統記憶體。

最大的特點就是速度快。但是也因為在記憶體中,當mysqld守護程序崩潰時,所有memory資料都會丟失。

memory要求儲存在資料表裡的資料使用的是長度不變的格式,這意味著不能使用blob和text這樣的長度可變的資料型別,varchar是一種長度可變的型別,但因為它在mysql內部當做長度固定不變的char型別,所以可以使用。

還有一些其他型別的儲存引擎。因本人實際開發中,未曾接觸,暫不總結。

mysql儲存引擎學習

文章摘抄至 那麼什麼是儲存引擎呢?儲存引擎說白了就是如何儲存資料 如何為儲存的資料建立索引和如何更新 查詢資料等技術的實現方法。因為在關聯式資料庫中資料的儲存是以表的形式儲存的,所以儲存引擎也可以稱為表型別 即儲存和操作此表的型別 在oracle 和sql server等資料庫中只有一種儲存引擎,所...

MySQL學習 儲存引擎

mysql 可以將資料以不同的技術儲存在檔案 記憶體 中,這種技術就稱作從儲存引擎。不同的儲存引擎使用不同的儲存機制,索引技巧,鎖定水平,最終提供廣泛且不同的功能。mysql支援的儲存引擎 當多個連線對記錄進行修改時需要保證資料的一致性與完整性,併發控制可以通過鎖機制實現。鎖 鎖顆粒 事務是區別於檔...

mysql儲存引擎 mysql儲存引擎簡介

精品推薦 什麼是儲存引擎 mysql儲存引擎是資料庫如何儲存資料 怎樣建立索引以及如何查詢更新資料等技術的實現方法,資料通過使用不同的技術儲存在檔案中,使用不同的儲存機制 索引方式來提供不同的功能。在mysql這種關係型資料中心來說,資料是以表的方式來儲存的,因此,簡單點來說,儲存引擎就是儲存和操作...