innodb分配内存有三种方法html
1)使用OS的mallocmysql
2)使用innodb本身实现的内存分配方法linux
3)使用goolge的Tmallocsql
在my.cn配置文件中可设置spa
#InnoDB是使用自带的内存分配程序,
#仍是使用当前部署的操做系统中现有的更高效的内存分配程序
#默认设置值为1,
#设置为0:表示Innodb使用自带的内存分配程序。
#设置为1:表示InnoDB使用操做系统的内存分配程序。
innodb_use_sys_malloc = 1 操作系统
http://www.2cto.com/database/201411/351115.htmlhtm
innodb本身实现的内存管理分三部分blog
1)基础内存管理内存
ut_mem_block_t 结构体部署
2)伙伴分配器
3) 内存分配堆heap
innobase_start_or_create_for_mysql
srv_boot
srv_general_init
mem_init
mem_pool_create 分配一大块内存,并初始化buddy
ut_malloc_low 分配内存