innodb_buffer_pool_size
1.innodb_buffer_pool_size中包含
数据缓存InnoDB数据页面
索引缓存索引数据
缓冲数据脏页(在内存中修改尚未刷新(写入)到磁盘的数据)
内部结构如自适应哈希索引,行锁等。
2.验证设置innodb数值的合理性
如果服务器器是专用服务器一般设置为ram得80%左右,如果是共享服务器那就看实际情况定义。对于读写压力比较大的服务器考虑增大innodb_buffer_pool_instances的值,减少不同线程读取和写入缓存页面时的竞争。
innodb_buffer_pool_reads:表示InnoDB缓冲池无法满足的请求数。需要从磁盘中读取。
innodb_buffer_pool_read_requests:表示从内存中读取逻辑的请求数。
缓冲池大小必须始终等于或者是innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances的倍数。innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances
InnoDB buffer pool 命中率:
InnoDB buffer pool 命中率 = innodb_buffer_pool_read_requests / (innodb_buffer_pool_read_requests + innodb_buffer_pool_reads ) * 100
此值低于99%,则可以考虑增加innodb_buffer_pool_size。
Performance = innodb_buffer_pool_reads / innodb_buffer_pool_read_requests * 100
-----------------------------innodb_log_file_size ----------------------------------------
innodb_log_file_size 重做日志大小,用于数据库宕机时重放已经提交的日志可以适当增加其大小。