(十一)MySQL存儲引擎


1、存儲引擎簡介

??MySQL可以將數(shù)據(jù)以不同的技術(shù)存儲在文件(內(nèi)存)中,該技術(shù)就被稱為存儲引擎。每一種存儲引擎使用不同的存儲機(jī)制、索引技巧、鎖定水平,最終提供廣泛且不同的功能。對于關(guān)系型數(shù)據(jù)庫而言,數(shù)據(jù)都是以數(shù)據(jù)表的形式存儲的,因此存儲引擎也可以理解為是表類型。

??例如:

??查看數(shù)據(jù)表“test”的建表結(jié)構(gòu):


??其中“ENGING = InnoDB”即為本節(jié)要講述的存儲引擎。而MySQL支持的常見存儲引擎有如下幾種:
??MyISAM、InnoDB、Memory、CSV、Archive

在介紹各個存儲引擎的特點之前,先來了解幾個相關(guān)知識點:


2、存儲引擎的特點

特點 MyISAM InnoDB Memory Archive
存儲限制 64TB
事務(wù)安全 - 支持 - -
支持索引 支持 支持 支持
鎖粒度 表鎖 行鎖 表鎖 行鎖
數(shù)據(jù)壓縮 支持 - - 支持
支持外鍵 - 支持 - -


MyISAM:擁有較高的插入,查詢速度,但不支持事務(wù),是在Web、數(shù)據(jù)倉儲和其他應(yīng)用環(huán)境下最常使用的存儲引擎之一;

InnoDB :事務(wù)型數(shù)據(jù)庫的首選引擎,提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全,支持ACID事務(wù),支持行級鎖定;

Memory:將所有數(shù)據(jù)保存在內(nèi)存中,在需要快速查找引用和其他類似數(shù)據(jù)的環(huán)境下,可提供極快的訪問,但如果數(shù)據(jù)庫重啟或崩潰,數(shù)據(jù)會丟失,因此只適合存儲臨時數(shù)據(jù);

Archive:適合存儲歸檔數(shù)據(jù),如日志信息。它只支持INSERT和SELECT操作,其設(shè)計的主要目的是提供高速的插入和壓縮功能;

CSV: 邏輯上由逗號分割數(shù)據(jù)的存儲引擎,它會在數(shù)據(jù)庫子目錄里為每個數(shù)據(jù)表創(chuàng)建一個.CSV文件。這是一種普通文本文件,每個數(shù)據(jù)行占用一個文本行??梢詫xcel的數(shù)據(jù)存儲為CSV格式文件,再復(fù)制到MySQL的數(shù)據(jù)目錄下,就能在MySQL中以表的方式打開,因此適合作為一種數(shù)據(jù)交換機(jī)制。


3、修改存儲引擎

  • 修改MySQL配置文件
  • 創(chuàng)建數(shù)據(jù)表時指定


  • 修改數(shù)據(jù)表的存儲引擎



版權(quán)聲明:歡迎轉(zhuǎn)載,歡迎擴(kuò)散,但轉(zhuǎn)載時請標(biāo)明作者以及原文出處,謝謝合作!             ↓↓↓
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容