日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

MySQL的Flush-List和臟頁的落盤機(jī)制

瀏覽:2日期:2023-10-08 15:13:44

一、回顧

MySQL啟動后Buffer Pool會初始化。Buffer Pool也會初始化好N多個空白的緩存頁,以及它們的描述數(shù)據(jù)會被組織成LRU鏈表以及FreeList 雙向鏈表。

這時你從磁盤中讀取一個數(shù)據(jù)頁,會先從Free List中找出一個空閑緩存頁的描述信息,然后將你讀出的數(shù)據(jù)頁中加載進(jìn)緩存頁中。同時將緩存頁的描述信息從Free List中剔除,此外該描述信息塊還會被維護(hù)進(jìn)LRU鏈表中。

數(shù)據(jù)頁被加載進(jìn)Buffer Pool后你就可以對其進(jìn)行變更操作了。

二、Flush List

為了加快響應(yīng)客戶端的速度,MySQL會在Buffer Pool中對數(shù)據(jù)進(jìn)行修改,可是一旦你對LRU鏈表中的緩存頁做了修改,那該頁中的數(shù)據(jù)和磁盤中的數(shù)據(jù)頁信息就不一致了!大家一般管這種數(shù)據(jù)頁叫做臟頁。

為了保證數(shù)據(jù)的最終一致性,MySQL是需要將臟頁刷新回磁盤的!

但是問題是:需要將哪些數(shù)據(jù)頁刷新回磁盤呢?

這就引出了Flush List~

Flush List 和 Free List很像,都是由Buffer Pool中數(shù)據(jù)描述信息組織而成的雙向鏈表。

MySQL的Flush-List和臟頁的落盤機(jī)制

一旦你對內(nèi)存中的緩沖頁作出了修改,那該緩沖頁對應(yīng)的描述信息塊就會添加進(jìn) Flush List。這樣當(dāng)Buffer Pool中的數(shù)據(jù)頁不夠用時,我們就可以優(yōu)先將 Flush List中的臟數(shù)據(jù)頁刷新進(jìn)磁盤中。

如果你讀了前幾篇文章那你肯定知道了 LRUList、FreeList、FlushList、Buffer Pool、臟頁、臟數(shù)據(jù)。

下面乘勝追擊!一起看一下臟頁的落盤機(jī)制

三、什么是臟頁?什么是臟數(shù)據(jù)?

什么是臟頁?

我在介紹Flush List 的那篇文章有提及,臟頁就是LRU鏈表中被修改了的緩存頁。他們和磁盤中的數(shù)據(jù)頁不一致,臟頁是需要被刷新回磁盤的。

什么是臟數(shù)據(jù)?

這個問題其實引出了臟讀的概念。舉個例子:事物A中讀取到了事物B中未提交的數(shù)據(jù),我們管這些數(shù)據(jù)叫做臟數(shù)據(jù)。

四、臟頁刷回磁盤的時機(jī)

當(dāng)Buffer Pool不夠用時,根據(jù)LRU機(jī)制,MySQL會將Old SubList部分的緩存頁移出LRU鏈表。如果被移除出去的緩存頁的描述信息在Flush List中,MySQL就得將其刷新回磁盤。

InnoDB存儲引擎將臟頁刷回磁盤的時機(jī)有蠻多的,你可以把它當(dāng)作拓展知識大概瀏覽一下。

1、當(dāng)MySQL數(shù)據(jù)庫關(guān)閉時,會將所有的臟數(shù)據(jù)頁刷新回磁盤。這個功能由參數(shù):innodb_fast_shutdown=0控制,默認(rèn)讓InnoDB在關(guān)閉前將臟頁刷回磁盤,以及清理掉undo log。

2、有一個后臺線程Master Thread會按照每秒或者每十秒的速度,異步的將Buffer Pool中一定比例的頁面刷新回磁盤中。

3、在MySQL5.7中,Buffer Pool的刷新由page cleaner threads完成。

我們可以通過innodb_page_cleaners參數(shù)控制page cleaner threads線程的數(shù)量,但是當(dāng)你將這個數(shù)值調(diào)整的比Buffer Pool的數(shù)量還大時,MySQL會自動將 innodb_page_cleaners數(shù)量設(shè)置為innodb_buffer_pool_instances的數(shù)量。Innodb1.1.x之前需要保證LRU列表中有至少100個空閑頁可以使用。低于這個閾值就會觸發(fā)臟頁的刷新。從MySQL5.6,也就是innodb1.2.X開始,innodb_lru_scan_depth參數(shù)為每個緩沖池實例指定page cleaner threads 掃描Buffer Pool來查找要刷新的臟頁的下行距離。默認(rèn)為1024,該后臺線程每秒都會執(zhí)行一次。4、當(dāng)臟數(shù)據(jù)頁太多時,也會觸發(fā)將臟數(shù)據(jù)頁刷新回磁盤。該機(jī)制可由參數(shù)innodb_nax_dirty_pages_pct控制,比如將其設(shè)置為75,表示,當(dāng)Buffer Pool中的臟數(shù)據(jù)頁達(dá)到整體緩存的75%時,觸發(fā)刷新的動作。現(xiàn)實情況是該參數(shù)默認(rèn)值為0。以此來禁用Buffer Pool早期的刷新行為。

5、當(dāng)redo log不可用時,也會強(qiáng)制臟頁列表中的臟頁刷新回磁盤。這個機(jī)制同樣由一個后臺線程完成。

五、其他關(guān)于臟頁刷新的知識點

刷新臨接數(shù)據(jù)頁:意思是當(dāng)MySQL將某臟頁刷新回磁盤時,是否也以相同的態(tài)度將該臟頁鄰接的臟頁一并刷新回磁盤。

可以通過參數(shù)innodb_flush_neighbors控制該過程。

設(shè)置為0時表示,禁用刷新鄰接的功能。 設(shè)置為1時表示,以相同的態(tài)度刷新其鄰接的臟頁。 設(shè)置為2時表示,以相同的程度刷新臟頁。

那如何選擇將其設(shè)置為哪種狀態(tài)呢?

你可以根據(jù)MySQL實例所在機(jī)器的存儲類型來決定。如果為HDD存儲建議將其開啟,因為HDD的磁盤刷新速率較低,開啟該參數(shù)后可以有效的減少IO操作。相反如果使用SSD存儲,其本身就有高磁盤IO的特性,建議禁用該參數(shù)。

以上就是MySQL的Flush-List和臟頁的落盤機(jī)制的詳細(xì)內(nèi)容,更多關(guān)于MySQL Flush-List和臟頁的落盤機(jī)制的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲三级欧美| 久久精品一区二区国产| 亚洲黄色中文字幕| 日韩高清不卡| 日韩在线一区二区| 日韩精品午夜视频| 日本欧美一区二区在线观看| 国产精品亚洲综合在线观看| 国产精品xxx| 亚洲精品一级二级| 国产亚洲精品v| 婷婷成人av| 成人亚洲一区| 好吊日精品视频| 日本h片久久| 国产精品精品| 亚洲成人日韩| 青青在线精品| 日韩在线综合| 亚洲va久久久噜噜噜久久| 麻豆精品蜜桃视频网站| 欧美xxxx中国| 久久不射中文字幕| 久久麻豆视频| 国产亚洲在线| 精品亚洲成人| 首页欧美精品中文字幕| 美女在线视频一区| 亚洲激情黄色| 美女久久99| 久久香蕉精品| 精品久久久中文字幕| 免费日韩视频| 亚洲黄色网址| 国产欧美一区| 99国内精品| 精品亚洲自拍| 中文无码日韩欧| 色婷婷色综合| 日本不卡一区二区三区| 人人精品亚洲| 国产精品白丝一区二区三区| 亚洲在线国产日韩欧美| 国内在线观看一区二区三区| 免费看欧美美女黄的网站| 成人亚洲一区| 国产日产精品_国产精品毛片 | 国产一区二区三区久久 | 日韩精品免费视频人成 | 国产福利片在线观看| 亚洲va久久| 欧美在线观看视频一区| 国产精品一国产精品k频道56| 欧美日韩国产一区二区三区不卡| 国产精品最新自拍| 免费视频一区二区| 99久久亚洲精品蜜臀| 国产日韩欧美三级| 亚洲a成人v| 亚洲尤物在线| 婷婷综合六月| 麻豆精品视频在线观看视频| 亚洲久草在线| 日韩视频二区| 99精品在线观看| 日韩成人三级| 国内揄拍国内精品久久| 日本视频中文字幕一区二区三区| 欧美精品一线| 久久在线免费| 一本大道色婷婷在线| 欧美日韩亚洲一区在线观看| 夜夜嗨av一区二区三区网站四季av| 波多视频一区| 精品国产中文字幕第一页| 欧美视频精品全部免费观看| 亚洲精品伊人| 丝袜美腿成人在线| 麻豆久久精品| 亚洲综合精品四区| 午夜宅男久久久| 欧美在线综合| 男人操女人的视频在线观看欧美| 蜜桃一区二区三区| 亚洲第一区色| 欧美性感美女一区二区| 日韩精品一区二区三区免费观影 | 欧美a一区二区| 国产精品一在线观看| 日本欧美一区二区在线观看| 日韩和欧美一区二区三区| 最新国产精品久久久| 香蕉久久久久久| 在线免费观看亚洲| 石原莉奈一区二区三区在线观看| 日韩视频中文| 久久高清免费观看| 亚洲五月综合| 日韩精品视频一区二区三区| 日韩1区2区日韩1区2区| 国产乱子精品一区二区在线观看| 国产精品久久国产愉拍| 美女视频黄免费的久久| 国产成人精品一区二区三区免费| 国产成人精品福利| 成人精品中文字幕| av成人国产| 日韩欧美久久| 国产福利一区二区精品秒拍| 麻豆精品av| 成人一区而且| 欧美日韩国产在线一区| 蜜桃视频一区二区三区在线观看| 日本h片久久| 亚洲天堂资源| 亚洲一区二区成人| 91精品日本| 综合日韩av| 在线视频日韩| 捆绑调教日本一区二区三区| 最新亚洲国产| 日韩av不卡在线观看| 国产精品2区| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 吉吉日韩欧美| 婷婷亚洲五月色综合| 蜜桃视频在线观看一区二区| 国产精品成人国产| 久久精品99久久无色码中文字幕| 美女被久久久| 丝袜美腿高跟呻吟高潮一区| 久久国产精品免费一区二区三区 | 免费一区二区视频| 国产视频一区二区在线播放| 国产99在线| 亚洲专区一区| 精品国产99| 鲁大师成人一区二区三区| 国产精品久一| 欧美精选一区二区三区| 国产欧美自拍| 亚洲国产综合在线看不卡| 日本视频一区二区| 国产在线欧美| 日本成人在线不卡视频| 久久久久久夜| 日本中文字幕一区二区视频| av高清不卡| 亚洲精品系列| 久久激情一区| 欧美日本精品| 日韩午夜在线| 国产aa精品| 日韩精品成人| 尤物精品在线| 亚洲人妖在线| 色天使综合视频| 久久国产人妖系列| 不卡av一区二区| 日韩av中文字幕一区二区三区| 久久婷婷一区| 麻豆精品国产91久久久久久| 在线精品一区二区| 久久精品成人| 国产aⅴ精品一区二区四区| 日本伊人午夜精品| 欧美精品羞羞答答| 久久精品国产999大香线蕉| 美女日韩在线中文字幕| 国产精品精品国产一区二区| 日韩精品免费视频人成| 99亚洲视频| 亚洲精品一级二级| 美女视频网站久久| 亚洲一级淫片| 红桃视频欧美| 免费看av不卡| 国产成人免费精品| 国产欧美日韩视频在线| 亚洲精品乱码久久久久久蜜桃麻豆| 日韩成人亚洲| 精品久久福利| 美女免费视频一区| 国产欧美88| 欧美偷窥清纯综合图区| 日本亚洲视频在线| 中文日韩欧美| 理论片午夜视频在线观看| 国产精品午夜一区二区三区| аⅴ资源天堂资源库在线| 日韩手机在线| 亚洲深夜影院| 欧美亚洲国产一区| 激情亚洲影院在线观看| 加勒比视频一区| 麻豆精品久久久| 免费在线亚洲欧美| 免费在线亚洲欧美| 久久精品国产在热久久| 国产精品极品国产中出|