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

MySQL取消了Query Cache的原因

 更新時(shí)間:2020年10月14日 11:59:19   作者:徐軼韜  
這篇文章主要介紹了MySQL取消了Query Cache的原因,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下

MySQL之前有一個(gè)查詢緩存Query Cache,從8.0開始,不再使用這個(gè)查詢緩存,那么放棄它的原因是什么呢?在這一篇里將為您介紹。

MySQL查詢緩存是查詢結(jié)果緩存。它將以SEL開頭的查詢與哈希表進(jìn)行比較,如果匹配,則返回上一次查詢的結(jié)果。進(jìn)行匹配時(shí),查詢必須逐字節(jié)匹配,例如 SELECT * FROM t1; 不等于select * from t1;,此外,一些不確定的查詢結(jié)果無法被緩存,任何對(duì)表的修改都會(huì)導(dǎo)致這些表的所有緩存無效。因此,適用于查詢緩存的最理想的方案是只讀,特別是需要檢查數(shù)百萬行后僅返回?cái)?shù)行的復(fù)雜查詢。如果你的查詢符合這樣一個(gè)特點(diǎn),開啟查詢緩存會(huì)提升你的查詢性能。

隨著技術(shù)的進(jìn)步,經(jīng)過時(shí)間的考驗(yàn),MySQL的工程團(tuán)隊(duì)發(fā)現(xiàn)啟用緩存的好處并不多。

首先,查詢緩存的效果取決于緩存的命中率,只有命中緩存的查詢效果才能有改善,因此無法預(yù)測(cè)其性能。

其次,查詢緩存的另一個(gè)大問題是它受到單個(gè)互斥鎖的保護(hù)。在具有多個(gè)內(nèi)核的服務(wù)器上,大量查詢會(huì)導(dǎo)致大量的互斥鎖爭(zhēng)用。

通過基準(zhǔn)測(cè)試發(fā)現(xiàn),大多數(shù)工作負(fù)載最好禁用查詢緩存(5.6的默認(rèn)設(shè)置):query_cache_type = 0

如果你認(rèn)為會(huì)從查詢緩存中獲得好處,請(qǐng)按照實(shí)際情況進(jìn)行測(cè)試。

  • 數(shù)據(jù)寫的越多,好處越少
  • 緩沖池中容納的數(shù)據(jù)越多,好處越少
  • 查詢?cè)綇?fù)雜,掃描范圍越大,則越受益

MySQL8.0取消查詢緩存的另外一個(gè)原因是,研究表明,緩存越靠近客戶端,獲得的好處越大。關(guān)于這份研究請(qǐng)參考https://proxysql.com/blog/scaling-with-proxysql-query-cache/

下圖源自上面的網(wǎng)址:

除此之外,MySQL8.0新增加了對(duì)性能干預(yù)的工具,例如,現(xiàn)在可以利用查詢重寫插件,在不更改應(yīng)用程序的同時(shí),插入優(yōu)化器提示語句。另外,還有像ProxySQL這樣的第三方工具,它們可以充當(dāng)中間緩存。

綜合以上原因,MySQL8.0不再提供對(duì)查詢緩存的支持,如果用戶從5.7版本升級(jí)至8.0,考慮使用查詢重寫或其他緩存。

全文完。

以上就是MySQL取消了Query Cache的原因的詳細(xì)內(nèi)容,更多關(guān)于MySQL Query Cache的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • mysql 5.7.18 Archive壓縮版安裝教程

    mysql 5.7.18 Archive壓縮版安裝教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.18 Archive壓縮版安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • mysql函數(shù)全面總結(jié)

    mysql函數(shù)全面總結(jié)

    這篇文章主要介紹了mysql函數(shù),下面文章從MySQL常用的函數(shù)開始介紹、還有數(shù)值函數(shù),利用舉例說明的形式展開內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • Win7下安裝MySQL5.7.16過程記錄

    Win7下安裝MySQL5.7.16過程記錄

    這篇文章主要為大家分享了Win7下安裝MySQL5.7.16過程的筆記,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • MySQL分區(qū)表的局限和限制詳解

    MySQL分區(qū)表的局限和限制詳解

    本文對(duì)Mysql分區(qū)表的局限性做了一些總結(jié),因?yàn)閭€(gè)人能力以及測(cè)試環(huán)境的 原因,有可能有錯(cuò)誤的地方,還請(qǐng)大家看到能及時(shí)指出,當(dāng)然有興趣的朋友可以去官方網(wǎng)站查閱。
    2017-03-03
  • MySQL安裝詳解圖文版(V5.5 For Windows)

    MySQL安裝詳解圖文版(V5.5 For Windows)

    這幾年一直在用MySQL,并且是Windows+.Net+MySQL的搭配,用MyISAM引擎支持過單表每天千萬以上的數(shù)據(jù)遞增,TB級(jí)的數(shù)據(jù)MySQL游刃有余。
    2011-09-09
  • 聊一聊MyISAM和InnoDB的區(qū)別

    聊一聊MyISAM和InnoDB的區(qū)別

    這篇文章主要介紹了聊一聊MyISAM和InnoDB的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Mysql虛擬列的使用場(chǎng)景

    Mysql虛擬列的使用場(chǎng)景

    MySQL虛擬列是一種在查詢時(shí)動(dòng)態(tài)生成的特殊列,它不占用存儲(chǔ)空間,可以提高查詢效率和數(shù)據(jù)處理便利性,本文給大家介紹Mysql虛擬列的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2025-01-01
  • 最新評(píng)論

    台湾省| 温州市| 柳州市| 眉山市| 江阴市| 扶沟县| 云阳县| 衡东县| 定南县| 仁寿县| 蓝山县| 新邵县| 湖州市| 肃北| 冀州市| 澳门| 武强县| 凯里市| 来宾市| 汝阳县| 全南县| 肇州县| 东辽县| 乌拉特前旗| 遂溪县| 额济纳旗| 平原县| 周至县| 扬中市| 景宁| 方山县| 观塘区| 岳阳县| 格尔木市| 洮南市| 马尔康县| 沈阳市| 东安县| 娄底市| 博白县| 乌拉特后旗|