mysql内存管理
2021-11-07 20:36:42 2 举报
mysql内存管理
作者其他创作
大纲/内容
加载数据过程
存放热点数据
存放新加载/不常使用数据
LRU冷热分离
读取页数据到内存地址
LRU_OLD
没有空闲节点
淘汰数据过程
访问Freelist获取内存地址
midpoint
FreeList是否不为空
LRU_OLD中淘汰
FreeList空闲链表Flush List脏数据页链表LRU淘汰页链表(脏页+数据页)Page Hash 内存页 磁盘页映射关系每个链表节点都是对应一个mysql页数据
1.维护PageHash存储数据映射关系2.将节点从FreeList中移除,将节点加入LRU_OLD_List中
从LRU FlushList中淘汰
FreeList空闲链表
不为空拿到内存地址
LRU_NEW
把FlushList中节点数据刷盘到磁盘,把该节点链接到FreeList
如果LRU_OLD中数据都在使用
mysql内存管理
DiskFile磁盘文件
0 条评论
下一页