MYSQL的資料庫儲存引擎

2021-08-31 03:02:09 字數 817 閱讀 6967

檢視儲存引擎的方法:

使用命令 show engines,可以得到以下結果

圖中的結果就是mysql的所有搜尋(儲存)引擎;關於這幾種搜尋引擎的簡介可以看mysql搜尋引擎總結

首先需要了解的是,mysql5.1以前預設的儲存引擎是myisam,5.1及以後預設使用的是innodb。根據mysql版本和需要可以手動修改儲存引擎;當然,可以給不同表使用不同的儲存引擎。

現將兩者對比如下:

1)innodb是事務性儲存引擎 而  myisam不支援事務(需要考慮acid時選擇前者)

2)innodb支援外來鍵而  myisam不支援外來鍵 (但在現實專案中,外來鍵基本不需要)

3)兩者採用的索引結構都是b+ tree,但葉子節點存放的資料不同:

innodb的b+tree存放主鍵+其他字段資料 or 其他字段資料+ 主鍵指標(innodb的b+tree索引兩種形態);

myisam存放指向資料的指標(該引擎的表是堆表,存放會有三個檔案。內容分別為表定義,表資料,表索引);

因此myisam所需記憶體比innodb少(innodb索引結構中有資料塊)。

4)innodb支援行鎖,做update+insert快(主要是更新),myisam做select+insert快(主要是查詢)。尤其是count(*)時(沒有where)myisam不用遍歷表。

Mysql資料庫儲存引擎

儲存引擎是什麼?mysql中的資料用各種不同的技術儲存在檔案 或者記憶體 中。這些技術中的每一種技術都使用不同的儲存機制 索引技巧 鎖定水平並且最終提供廣泛的不同的功能和能力。通過選擇不同的技術,你能夠獲得額外的速度或者功能,從而改善你的應用的整體功能。例如,如果你在研究大量的臨時資料,你也許需要使...

資料庫 mysql儲存引擎

mysql常用的四種引擎的介紹 1 myisam儲存引擎 不支援事務 也不支援外來鍵,優勢是訪問速度快,對事務完整性沒有要求或者以select,insert為主的應用基本上可以用這個引擎來建立表,適合寫多的情況。frm儲存當前資料表的結構,myd儲存當前表的資料,myi儲存當前資料表的索引 支援表級...

mysql資料庫儲存引擎

我們在 mysql儲存引擎有哪些 一節中介紹了 mysql 中幾種主要的儲存引擎以及它們的使用特性,本節將介紹如何根據不同的應用場景去選擇合適的儲存引擎。在使用 mysql 資料庫管理系統時,選擇乙個合適的儲存引擎是乙個非常複雜的問題。不同的儲存引擎都有各自的特性 優勢和使用的場合,正確的選擇儲存引...