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

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

Mysql臟頁flush及收縮表空間原理解析

瀏覽:26日期:2023-10-11 14:55:45

mysql臟頁

由于WAL機制,InnoDB在更新語句的時候,制作了寫日志這一個磁盤操作,就是redo log,在內(nèi)存寫完redo log后,就返回給客戶端, 即更新成功。

把內(nèi)存里的數(shù)據(jù)寫入磁盤的過程,術(shù)語就是flush,在flush之前,實際數(shù)據(jù)和數(shù)據(jù)庫中的數(shù)據(jù)是不一致的,因為在redo log基礎(chǔ)上更新了還未寫入,數(shù)據(jù)庫是老的,當內(nèi)存數(shù)據(jù)頁跟磁盤數(shù)據(jù)頁內(nèi)容不一致的時候,稱這個內(nèi)存頁為臟頁,內(nèi)存寫入后就一致了,稱為干凈頁,

如果mysql偶爾運行速度很慢,很可能是在刷臟頁。引發(fā)數(shù)據(jù)庫flush的過程

redo log滿了,系統(tǒng)停止所有更新操作,將checkpoint向前推進,騰出空間繼續(xù)寫。 系統(tǒng)內(nèi)存不足,需要新的內(nèi)存頁不夠用,就會淘汰一些數(shù)據(jù)頁,留給別的數(shù)據(jù)頁使用,如果淘汰的是臟頁,就會先寫到磁盤。 mysql空閑的時候。 正常關(guān)閉mysql的時候 在第一種情況下,redo log滿了,這種情況是innodb要避免的,因為整個系統(tǒng)都不能再更新了,這是不能接受的 第二種情況,內(nèi)存滿了,要先寫到磁盤,innodb用緩沖池管理內(nèi)存,有三種狀態(tài) 還沒有用的內(nèi)存頁 用了并且是干凈頁 用了并且是臟頁(淘汰的時候需要寫入到磁盤)

所以我們有時使用數(shù)據(jù)庫會發(fā)現(xiàn)數(shù)據(jù)庫性能突然下降,可能就是在處理臟頁。

刷臟頁控制策略

Innodb_io_capacity參數(shù),這個參數(shù)會告訴innodb你的磁盤io能力。(有公式計算) innodb刷盤主要兩個因素:臟頁比例和redo log的寫盤速度 innodb_max_derty_pages_pct是臟頁比例上限,默認是75%,調(diào)整好Innodb_io_capacity參數(shù)值,使臟頁比例不要超過75%收縮表空間

場景例子:數(shù)據(jù)庫占用空間太大,把最大的表刪掉了一半數(shù)據(jù),表的大小還是沒有變化。

數(shù)據(jù)刪除流程

Mysql臟頁flush及收縮表空間原理解析

加入要刪掉R4,InnoDB引擎只會把R4這個記錄標記為刪除,如果之后再摻入一個ID在300-600之間的記錄時,會復(fù)用這個位置,但是磁盤文件的大小并不會縮小。

如果刪掉了一個數(shù)據(jù)頁上的所有記錄,這個數(shù)據(jù)頁就可以被復(fù)用。

注意:數(shù)據(jù)頁的復(fù)用跟記錄的復(fù)用是不同的。

比如R4這條記錄被刪除,如果插入一個ID是400的行,直接復(fù)用這個空間,但是如果插入ID是800的行,就不能復(fù)用這個位置了。 但是整個數(shù)據(jù)頁Page A上的所有記錄刪除之后,pageA標記為可復(fù)用,如果插入一條ID=50的記錄需要用新的數(shù)據(jù)頁的時候,PageA是可以背負用的。 如果我們用delete命令把整個表數(shù)據(jù)刪除,結(jié)果是所有的數(shù)據(jù)頁都會標記為可復(fù)用,但是在磁盤上,文件不會變小。

插入數(shù)據(jù)流程

如果數(shù)據(jù)按照索引順序插入的,索引是緊湊的,但是如果是隨機插入的,就會造成索引的數(shù)據(jù)頁分頁。

Mysql臟頁flush及收縮表空間原理解析

如果pageA已經(jīng)滿了,在插入一行數(shù)據(jù)會怎樣?由于A滿了,在插入一個id是550的數(shù)據(jù)時,就會申請一個新的頁面pageB來保存數(shù)據(jù),分裂完成后pageA的末尾就留下了空洞。

更新索引上的值也是刪除一個舊的值,再插入一個新值,也會造成空洞。

收縮空間

新建一個與表A相同結(jié)構(gòu)的表B,按照主鍵ID遞增的順序,把數(shù)據(jù)一行一行的從A里讀出來再插入到表B中,表B中無空洞,數(shù)據(jù)頁的利用率也更高,如果我們把表B作為臨時表,數(shù)據(jù)從表A導(dǎo)入到B中的操作完成后,用B替換A,從效果上也起到了收縮A的作用。

Mysql臟頁flush及收縮表空間原理解析

在整個DDL過程中,表A不能有更新,所以這個DDL不是online的,在5.6之后的版本中,流程做了更改:

建立一個臨時文件,掃描A中的所有數(shù)據(jù)頁,

用數(shù)據(jù)頁中A的記錄生成B+樹,存儲在臨時文件中

將所有對A的操作記錄在一個日志文件中

臨時文件生成后,將日志文件的操作應(yīng)用到臨時文件,得到一個邏輯數(shù)據(jù)上與表A相同的數(shù)據(jù)文件

用臨時文件替換表A的數(shù)據(jù)文件

圖示

Mysql臟頁flush及收縮表空間原理解析

可以看到,與圖3過程的不同之處在于,由于日志文件記錄和重放操作這個功能的存在,這個方案在重建表的過程中,允許對表A做增刪改操作。

使用alter table A engine=InnoDB命令來重建表。在MySQL 5.5版本之前,這個命令的執(zhí)行流程跟我們前面描述的差不多,區(qū)別只是這個臨時表B不需要你自己創(chuàng)建,MySQL會自動完成轉(zhuǎn)存數(shù)據(jù)、交換表名、刪除舊表的操作。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品综合| 久久蜜桃精品| 亚洲免费婷婷| 日韩影院精彩在线| 日韩欧美2区| 国产亚洲一区在线| 蜜桃视频在线观看一区二区| 亚洲视频电影在线| 日韩精彩视频在线观看| 国产欧美日韩影院| 高清在线一区| 午夜av一区| 亚洲精品第一| 欧美一区成人| 久久男人天堂| 久久福利毛片| 国产极品一区| 久久精品免费一区二区三区 | 亚洲v在线看| 9色精品在线| 91亚洲精品在看在线观看高清| 国产区精品区| 日韩欧美精品| 视频精品一区二区| 久久香蕉精品香蕉| 国产视频一区三区| 国产精品草草| 99tv成人| 日韩精品中文字幕一区二区| 美女视频黄免费的久久| 欧美午夜精品一区二区三区电影| 午夜欧美精品久久久久久久| 91精品国产自产在线丝袜啪| 成人日韩精品| 日韩精品一区二区三区中文在线| 狠狠久久伊人中文字幕| 精品一区三区| 国产欧美大片| 亚洲欧美日韩国产一区| 精品无人区麻豆乱码久久久 | 久久男人av资源站| 综合一区在线| 日韩久久电影| 日韩在线成人| 亚洲国内精品| 麻豆久久一区| 亚洲精选91| 亚洲成人va| 国产精品亚洲一区二区在线观看| 91成人网在线观看| 日产精品一区二区| 日韩动漫一区| 亚洲一区日本| 欧美sm一区| 欧美极品中文字幕| 亚洲ww精品| 99热精品在线观看| 日韩av福利| 国产精品一区二区av交换| 欧美在线亚洲| 新版的欧美在线视频| 国产精品中文字幕制服诱惑| 视频一区二区国产| 久久精选视频| 国内精品亚洲| 国产日韩欧美三级| 亚洲专区视频| 中文欧美日韩| 欧美精品一区二区久久| 福利在线免费视频| 麻豆久久久久久| 91成人福利| 日韩精品免费视频一区二区三区 | 久久精品伊人| 欧美偷窥清纯综合图区| 中文字幕一区二区三区在线视频| av亚洲在线观看| 成人啊v在线| 国内精品伊人| 老牛国内精品亚洲成av人片| 久久国产日韩欧美精品| 亚洲不卡视频| 四虎国产精品免费久久| 男女性色大片免费观看一区二区 | 亚洲色图综合| 水野朝阳av一区二区三区| 国产伊人精品| 激情综合网站| 黑丝一区二区三区| 91久久国产| 亚洲福利国产| 天堂网在线观看国产精品| 国产主播一区| 欧美.日韩.国产.一区.二区| 三上悠亚国产精品一区二区三区| 色婷婷色综合| 久久久久久色 | 精品日韩毛片| 好看的亚洲午夜视频在线| 激情久久中文字幕| 欧美日韩视频| 日韩中文字幕在线一区| 日韩中文字幕区一区有砖一区 | aa亚洲婷婷| 男女精品网站| 亚洲欧美久久精品| 日本午夜精品久久久| 国产欧美一区二区色老头| 国产精品高清一区二区| 精品一区二区三区中文字幕视频 | 国产一区二区三区四区五区| 丁香婷婷久久| 99精品小视频| 美女久久网站| 国产区精品区| sm捆绑调教国产免费网站在线观看| 国产精品精品国产一区二区| 久久久久一区| 视频一区二区三区入口| 国产欧美日韩精品一区二区免费| 国产精品嫩草影院在线看| 精品亚洲成人| av一区二区高清| 日韩动漫一区| 91视频一区| 香蕉久久夜色精品国产| 欧美在线看片| 日韩精品91| 久久亚洲图片| 国产精成人品2018| 久久国产毛片| 最新国产精品视频| 狠狠久久伊人| 99re国产精品| 麻豆精品久久| 欧美日韩一二三四| 日本不卡不码高清免费观看| 国产一区二区三区视频在线| 99视频精品| 美女精品视频在线| 国产精品老牛| 麻豆精品国产91久久久久久| 欧美成人午夜| 国产情侣一区| 欧美在线亚洲| 精品一区视频| 免费成人在线观看| 国产一区二区三区亚洲| 蜜桃久久av| 97欧美在线视频| 亚洲另类av| 91精品xxx在线观看| 91精品丝袜国产高跟在线| 99视频精品视频高清免费| 日本强好片久久久久久aaa| 色88888久久久久久影院| 日韩精品亚洲专区在线观看| 久久国产直播| 免费看一区二区三区| 蜜芽一区二区三区| 日韩欧美1区| 麻豆成人91精品二区三区| 模特精品在线| 成人日韩在线观看| 国产欧美日韩精品高清二区综合区 | 日韩精品中文字幕吗一区二区| 日韩啪啪电影网| 国产日韩免费| 亚洲欧洲免费| 狠狠久久婷婷| 中文字幕在线视频久| 日本成人在线视频网站| 黄色成人精品网站| 日韩欧美午夜| 国产成人久久精品一区二区三区| 亚洲a级精品| 亚洲国产专区| 国产精品99视频| 国产精品17p| 亚洲免费观看高清完整版在线观| 亚洲二区免费| 99精品美女| 欧美天堂视频| 成人精品国产亚洲| 精品亚洲二区| 国产激情综合| 欧美在线看片| 日韩亚洲精品在线观看| 久久国产精品99国产| 蜜臀av免费一区二区三区| 三上亚洲一区二区| 九九久久国产| 麻豆91精品视频| 久久99精品久久久野外观看| 91精品啪在线观看国产爱臀| 日韩国产欧美在线播放| 日韩一区二区三区免费视频| 尤物在线精品| 亚洲欧美久久久| 丝袜诱惑制服诱惑色一区在线观看 |