mysql_存储引擎层-innodb buffer pool
buffer pool 是innodb存储引擎带的一个缓存池,查询数据时,首先从内存中查询 数据如果内存中存在的话直接返回。 innodb buffer pool 和 qcache 的区别:Qcache 缓存的是sql语句对应的结果集, buffer pool中缓存的是表中的数据(热)。buffer pool是设置的越大越好,一般设置为 物理服务器内存的70% 参数: innodb_buffer_pool_size innodb_buffer_pool的大小 innodb_buffer_pool_dump_now 默认为赶集OFF,如果开始该参数,停止msql服务 时,innoDB将innodb的缓存池中的数据保 存到本地硬盘 innodb_buffer_pool_load_at_startup 默认为关闭OFF。如果开启该参数,启动mysql服务 将本地热数据加载到InnoDB缓存池中 查看buffer_pool是否已经连接 show VARIABLES like '%innodb_buffer_pool%' innodb_buffer_pool filename 热数据文件 监控buffer pool使用情况 show status like '%innodb_buffer_pool%'; 参数: innodb_buffer_pool read requests 总共查询buffer pool的次数 innodb buffer _pool reads 从物理 磁盘获取数据的次数 通过这两个就可以知道bufferpool的命中率
不深思则不能造于道。不深思而得者,其得易失。