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