专栏名称: 运维路书
分享数据库、系统、应用的运维心得
今天看啥  ›  专栏  ›  运维路书

刁钻面试官!这题不会直接走人!MySQL如何管理和淘汰Buffer Pool ?

运维路书  · 公众号  ·  · 2024-09-27 18:09
    

文章预览

最近,有粉丝留言说,面试时被问到“MySQL如何管理和淘汰Buffer Pool ?”没有回答上来 这个真不应该,今天就来讨论一下这个问题。 Buffer Pool 是MySQL内存结构中最核心地组件之一,地位非常重要,这个问题必须要搞清楚! Buffer Pool 用途 Buffer Pool 是Innodb存储引擎的内存结构中的四大核心组件之一 主要作用: 缓存数据和索引 , 加速读请求,避免每次数据访问都进行磁盘IO 内存价格高,容量有限,无法比拟磁盘容量, 因此需要把最热的数据放到最近的地方,以最大限度的降低磁盘访问 Buffer Pool 以页为单位缓存数据,MySQL的页大小为16K 缓冲池的常用管理算法为LRU,OS 和 memcache都是用这种算法 传统的LRU算法 将最新加入到缓冲池中的页放到LRU的头部,从而最晚被淘汰。 分为两种情况: 01 需要用到的页已经在缓冲池中了,只需要将此页移动到LRU的头部,没 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览