mysql儲存引擎概述

2021-09-28 02:12:41 字數 1180 閱讀 8852

mysql儲存引擎特點

為表選擇儲存引擎:

mysql>

create

table test (a int) engine = innodb;

檢視有多少種儲存引擎:

mysql>show engines
更改表的儲存引擎:

mysql>alter table tbl engine = innodb;
主要儲存引擎

innodb儲存引擎

主鍵:primary key(a)

自增:auto_increment

此時,就算不給a 值或者null ,a依然能賦值正確;

對於使用auto_increment的列必須是索引

mysql中只有innodb支援外來鍵約束;且在建立外來鍵的時候,要求父表必須有對應的索引,子表在建立外來鍵的時候也會自動建立對應的索引;

myisam

每個myisam在磁碟上存成3個檔案:

.frm (儲存表定義)

myd(儲存資料)

myi (儲存索引)

頻繁地更新刪除記錄會產生 碎片,需要定期執行:

optimize table;

myisam,鎖粒度非常大,同時只能乙個在寫鎖;併發效能會差很多;

myisam 表資料可以直接從乙個資料庫拷貝到另乙個資料庫;

memory儲存引擎

建立臨時表:

mysql>

create

temporary

table tmp(id int ) engine = memory;

臨時表,只在每一連線中生效;

blackhole儲存引擎

總結

MySQL儲存引擎概述

儲存引擎在mysql的體系架構中位於第三層,負責mysql中的資料的儲存和提取,是與檔案打交道的 子系統,它是根據mysql提供的檔案訪問層抽象介面定製的一種檔案訪問機制,這種機制就叫作儲存引 擎。使用show engines命令,就可以檢視當前資料庫支援的引擎資訊 兩種引擎該如何選擇?是否需要事務...

mysql儲存引擎概述

myisam 儲存引擎是mysql 預設的儲存引擎,也是目前mysql 使用最為廣泛的儲存引擎之一。儲存引擎是需要在mysql 安裝的時候就必須和mysql 一起被編譯並同時被安裝的。mysql 的外掛程式式儲存引擎主要包括myisam,innodb,ndb cluster,maria,falcon...

InnoDB儲存引擎概述 概述

重新整理記憶體池資料,保證記憶體快取的是最新的資料,將已修改的資料檔案重新整理到磁碟中,資料庫發生異常時innodb能恢復至正常執行狀態.負責將緩衝池中的資料非同步重新整理到磁碟,保證資料的一致性,包括髒頁的重新整理,合併插入緩衝,undo頁的 async io處理io請求,四種thread wri...