加入收藏 | 设为首页 | 会员中心 | 我要投稿 91站长网 (https://www.91zhanzhang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql源码示例剖析

发布时间:2022-02-21 14:15:03 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍了mysql源码示例分析,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。 mysql的内存管理庞大而先进,这在mem0pool.c文件的开头注释中都有说明,粗略的可以分成四部分,包含9
       这篇文章主要介绍了mysql源码示例分析,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
 
       mysql的内存管理庞大而先进,这在mem0pool.c文件的开头注释中都有说明,粗略的可以分成四部分,包含9大块:
 
九大块:
 
buffer pool,
 
parsed andoptimized SQL statements,
 
data dictionarycache,
 
log buffer,
 
locks for eachtransaction,
 
hash table forthe adaptive index,
 
state andbuffers for each SQL query currently being executed,
 
session foreach user, and
 
stack for eachOS thread.
9大块通过4部分进行管理
 
A solution tothe memory management:
 
1. the bufferpool size is set separately;
 
2. log buffersize is set separately;
 
3. the commonpool size for all the other entries, except 8, is set separately.
也就是缓冲池,redo日志缓冲,普通池和8(用户session信息,可看做一部分)
 
redo日志缓冲由redo部分单独管理,bufferpool也就是缓冲池是一个复杂的部分,内容很多,普通池上面说了,除了8,和1,2.其余的都归它管。
MySQL是用C++开发的。
MySQL的官方网站http://www.mysql.com/上有源码下载,是C++的
 
       感谢你能够认真阅读完这篇文章,希望小编分享mysql源码示例分析内容对大家有帮助。

(编辑:91站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读