最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL?常用引擎總結(jié)分享

 更新時(shí)間:2022年06月06日 17:10:00   作者:??Java中文社群????  
這篇文章主要介紹了MySQL?常用引擎總結(jié)分享,MySQL有很多存儲(chǔ)引擎,所謂的存儲(chǔ)引擎是指用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù),更多常用引擎分享,需要的小伙伴可以參考下面文章內(nèi)容

前言:

MySQL 有很多存儲(chǔ)引擎(也叫數(shù)據(jù)引擎),所謂的存儲(chǔ)引擎是指用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù)。也就是存儲(chǔ)引擎是數(shù)據(jù)庫的底層軟件組織。在 MySQL 中可以使用“show engines”來查詢數(shù)據(jù)庫的所有存儲(chǔ)引擎,

如下圖所示: 

 在上述列表中,我們最常用的存儲(chǔ)引擎有以下 3 種:

  • InnoDB
  • MyISAM
  • MEMORY

下面我們分別來看看具體分析。

1.InnoDB

InnoDB 是 MySQL 5.1 之后默認(rèn)的存儲(chǔ)引擎,它支持事務(wù)、支持外鍵、支持崩潰修復(fù)和自增列。如果對(duì)業(yè)務(wù)的完整性要求較高,比如張三給李四轉(zhuǎn)賬,需要減張三的錢,同時(shí)給李四加錢,這時(shí)候只能全部執(zhí)行成功或全部執(zhí)行失敗,此時(shí)可以通過 InnoDB 來控制事務(wù)的提交和回滾,從而保證業(yè)務(wù)的完整性。

1.1 優(yōu)缺點(diǎn)分析

InnoDB 的優(yōu)勢(shì)是支持事務(wù)、支持外鍵、支持崩潰修復(fù)和自增列;它的缺點(diǎn)是讀寫效率較差、占用的數(shù)據(jù)空間較大。

2.MyISAM

MyISAM 是 MySQL 5.1 之前默認(rèn)的數(shù)據(jù)庫引擎,讀取效率較高,占用數(shù)據(jù)空間較少,但不支持事務(wù)、不支持行級(jí)鎖、不支持外鍵等特性。因?yàn)椴恢С中屑?jí)鎖,因此在添加和修改操作時(shí),會(huì)執(zhí)行鎖表操作,所以它的寫入效率較低。

2.1 優(yōu)缺點(diǎn)分析

MyISAM 引擎保存了單獨(dú)的索引文件 .myi,且它的索引是直接定位到 OFFSET 的,而 InnoDB 沒有單獨(dú)的物理索引存儲(chǔ)文件,且 InnoDB 索引尋址是先定位到塊數(shù)據(jù),再定位到行數(shù)據(jù),所以 MyISAM 的查詢效率是比 InnoDB 的查詢效率要高。但它不支持事務(wù)、不支持外鍵,所以它的適用場(chǎng)景是讀多寫少,且對(duì)完整性要求不高的業(yè)務(wù)場(chǎng)景。

3.MEMORY

內(nèi)存型數(shù)據(jù)庫引擎,所有的數(shù)據(jù)都存儲(chǔ)在內(nèi)存中,因此它的讀寫效率很高,但 MySQL 服務(wù)重啟之后數(shù)據(jù)會(huì)丟失。它同樣不支持事務(wù)、不支持外鍵。MEMORY 支持 Hash 索引或 B 樹索引,其中 Hash 索引是基于 key 查詢的,因此查詢效率特別高,但如果是基于范圍查詢的效率就比較低了。而前面兩種存儲(chǔ)引擎是基于 B+ 樹的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)了。

3.1 優(yōu)缺點(diǎn)分析

MEMORY 讀寫性能很高,但 MySQL 服務(wù)重啟之后數(shù)據(jù)會(huì)丟失,它不支持事務(wù)和外鍵。適用場(chǎng)景是讀寫效率要求高,但對(duì)數(shù)據(jù)丟失不敏感的業(yè)務(wù)場(chǎng)景。

4.查看和設(shè)置存儲(chǔ)引擎

4.1 查看存儲(chǔ)引擎

存儲(chǔ)引擎的設(shè)置粒度是表級(jí)別的,也就是每張表可以設(shè)置不同的存儲(chǔ)引擎,我們可以使用以下命令來查詢某張表的存儲(chǔ)引擎:

show create table t;

如下圖所示: 

4.2 設(shè)置存儲(chǔ)引擎

在創(chuàng)建一張表的時(shí)候設(shè)置存儲(chǔ)引擎: 

 修改一張已經(jīng)存在表的存儲(chǔ)引擎: 

總結(jié)

MySQL 中最常見的存儲(chǔ)引擎有:InnoDB、MyISAM 和 MEMORY,其中 InnoDB 是 MySQL 5.1 之后默認(rèn)的存儲(chǔ)引擎,它支持事務(wù)、支持外鍵、支持崩潰修復(fù)和自增列,它的特點(diǎn)是穩(wěn)定(能保證業(yè)務(wù)的完整性),但數(shù)據(jù)的讀寫效率一般;而 MyISAM 的查詢效率較高,但不支持事務(wù)和外鍵;MEMORY 的讀寫效率最高,但因?yàn)閿?shù)據(jù)都保存在內(nèi)存中的,所以 MySQL 服務(wù)重啟之后數(shù)據(jù)就會(huì)丟失,因此它只適用于數(shù)據(jù)丟失不敏感的業(yè)務(wù)場(chǎng)景。

到此這篇關(guān)于MySQL 常用引擎總結(jié)分享的文章就介紹到這了,更多相關(guān)MySQL 引擎內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL對(duì)數(shù)據(jù)表已有表進(jìn)行分區(qū)表的實(shí)現(xiàn)

    MySQL對(duì)數(shù)據(jù)表已有表進(jìn)行分區(qū)表的實(shí)現(xiàn)

    本文主要介紹對(duì)現(xiàn)有的一個(gè)表進(jìn)行創(chuàng)建分區(qū)表,并把數(shù)據(jù)遷移到新表,可以按時(shí)間來分區(qū),具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-10-10
  • MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 參數(shù)

    MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 參數(shù)

    這篇文章主要介紹了MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 參數(shù),需要的朋友可以參考下
    2015-08-08
  • mysql的集群模式 galera-cluster部署詳解

    mysql的集群模式 galera-cluster部署詳解

    這篇文章主要介紹了mysql的集群模式 galera-cluster部署詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-02-02
  • mysql Key_buffer_size參數(shù)的優(yōu)化設(shè)置

    mysql Key_buffer_size參數(shù)的優(yōu)化設(shè)置

    mysql數(shù)據(jù)庫中有許多重要的參數(shù),其中mysql key_buffer_size是對(duì)MyISAM表性能影響最大的一個(gè)參數(shù),下面就讓我們一起來了解一下
    2014-12-12
  • 使用limit,offset分頁場(chǎng)景時(shí)為什么會(huì)慢

    使用limit,offset分頁場(chǎng)景時(shí)為什么會(huì)慢

    這篇文章主要介紹了使用limit,offset分頁場(chǎng)景時(shí)為什么會(huì)慢,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • MySQL?insert死鎖問題解決詳細(xì)記錄

    MySQL?insert死鎖問題解決詳細(xì)記錄

    上周遇到一個(gè)因insert而引發(fā)的死鎖問題,其成因比較令人費(fèi)解,下面這篇文章主要給大家介紹了關(guān)于MySQL?insert死鎖問題解決詳細(xì)記錄的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • mysql大批量插入數(shù)據(jù)的正確解決方法

    mysql大批量插入數(shù)據(jù)的正確解決方法

    這篇文章主要介紹了mysql大批量插入數(shù)據(jù)的正確做法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • 使用PDO防sql注入的原理分析

    使用PDO防sql注入的原理分析

    這篇文章主要給大家介紹了關(guān)于使用PDO防sql注入的原理的相關(guān)資料,文中還給大家介紹了使用PDO的注意事項(xiàng),通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • MySQL示例DTID主從原理解析

    MySQL示例DTID主從原理解析

    這篇文章主要介紹了MySQL示例DTID主從原理解析,其實(shí)包含了詳細(xì)的使用方法說明,有需要的朋友可以借鑒參考下,希望可以有所幫助,感謝閱讀
    2021-09-09
  • MySQL詳解如何優(yōu)化查詢條件

    MySQL詳解如何優(yōu)化查詢條件

    我們知道從MySQL表中使用SELECT語句來查詢數(shù)據(jù),如需有條件地從表中選取數(shù)據(jù),可將WHERE子句添加到SELECT語句中,本篇我們來看看怎樣優(yōu)化查詢條件
    2022-05-05

最新評(píng)論

玉树县| 岳池县| 霍州市| 改则县| 礼泉县| 喀喇沁旗| 古田县| 蓬溪县| 孟州市| 湘乡市| 永寿县| 临沭县| 德安县| 黄大仙区| 葫芦岛市| 淳安县| 界首市| 皋兰县| 施甸县| 富裕县| 金堂县| 萝北县| 怀集县| 桂东县| 鹰潭市| 罗平县| 滦平县| 莲花县| 阳城县| 郯城县| 安图县| 连平县| 阿拉善右旗| 江陵县| 容城县| 会东县| 威宁| 调兵山市| 禹州市| 雅安市| 潼关县|