mysql脏页处理方法_mysql脏页是什么
1. 臟頁(內(nèi)存頁)
當(dāng)內(nèi)存數(shù)據(jù)頁跟磁盤數(shù)據(jù)頁內(nèi)容不一致的時候,我們稱這個內(nèi)存頁為“臟頁”。
內(nèi)存數(shù)據(jù)寫入到磁盤后,內(nèi)存和磁盤上的數(shù)據(jù)頁的內(nèi)容就一致了,稱為“干凈頁”。
平時很快的更新操作,都是在寫內(nèi)存和日志,他并不會馬上同步到磁盤數(shù)據(jù),這時內(nèi)存數(shù)據(jù)頁跟磁盤數(shù)據(jù)頁內(nèi)容不一致,我們稱之為“臟頁”。
一條 SQL 語句,正常執(zhí)行的時候特別快,偶爾很慢。那這時候可能就是在將臟頁同步到磁盤中了
2. 什么時候會引起將臟頁同步到磁盤中?
(1) 當(dāng) redo log寫滿了。這時候系統(tǒng)就會停止所有的更新操作,將更新的這部分日志對應(yīng)的臟頁同步到磁盤中,此時所有的更新全部停
止,此時寫的性能變?yōu)?,必須待刷一部分臟頁后才能更新,這時就會導(dǎo)致 sql語句 執(zhí)行的很慢。
(2) 也可能是系統(tǒng)內(nèi)存不足時,需要將一部分數(shù)據(jù)頁淘汰掉,如果淘汰的是臟頁,則需要先將臟頁同步到磁盤,空出來的給別的數(shù)據(jù)頁使用。
(3) MySQL 認為系統(tǒng)“空閑”的時候,反正閑著也是閑著反正有機會就同步到磁盤一些數(shù)據(jù)
(4) MySQL 正常關(guān)閉。這時候,MySQL 會把內(nèi)存的臟頁都同步到磁盤上,這樣下次 MySQL 啟動的時候,就可以直接從磁盤上讀數(shù)據(jù),啟動速度會很快。
3.會造成的影響
1 如果是redo log寫滿了
盡量要避免的。因為出現(xiàn)這種情況的時候,整個系統(tǒng)就不能再接受更新了,所有的更新都都會停止。此時寫的性能變?yōu)?,必須待刷一部分臟頁后才能更新,這時就會導(dǎo)致 sql語句 執(zhí)行的很慢
2 內(nèi)存不夠用了
常態(tài),很正常。
總結(jié)
以上是生活随笔為你收集整理的mysql脏页处理方法_mysql脏页是什么的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: node.js+uniapp计算机毕业设
- 下一篇: mysql脏写_图解脏写、脏读、不可重复