MYSQL基础:参数调优:2:常见的InnoDB调优参数

本文详述了MySQL InnoDB的重要调优参数,包括innodb_buffer_pool_size、innodb_buffer_pool_chunk_size、innodb_file_per_table等。建议根据服务器内存、CPU核数和磁盘性能来设定这些参数,以优化数据库性能。例如,innodb_buffer_pool_size可设为机器内存的80%,innodb_io_capacity推荐设为2000,innodb_thread_concurrency通常设为0以提高性能。
摘要由CSDN通过智能技术生成

在这里插入图片描述
这篇文章整理一下Innodb常用的调优参数,并给出建议。

设定参数

innodb_buffer_pool_size

innodb_buffer_pool_size是Innodb中最重要的设定参数,如果只能选一个进行优化,那就最好选择innodb_buffer_pool_size。此项参数在5.6.2引进,5.7之前的版本需要重启数据库才能生效,而5.7之后则可以动态调整。

设定方式和准则:
innodb_buffer_pool_size缓存的除了数据还有索引的信息.

  • 根据官方给出的建议,如果是专用的服务器的话,可以将机器内存的80%作为innodb_buffer_pool_size值。这一经验也被广泛的采纳,但是需要注意的是官方的文章中还有一个但是:“但是,需要注意的是这样做可能会导致一些潜在性的问题”,这些问题包括:
  • 过大的内存设定可能会导致操作系统的页面交换操作导致性能降低
  • 由于会预留一部分内存用于缓存和结构控制,所以设定值最好是比所需数据量大10%
  • 需要和innodb_buffer_pool_instances一起结合考虑进行设定,在内存小于1G的情况下,innodb_buffer_pool_instances缺省值为1。当内存较大的时候可以考虑结合innodb_buffer_pool_instances设定提高性能。
  • 建议一个16G内存的机器,如果不是完全作为数据库专用,可考虑innodb_buffer_pool_size设定为8G,innodb_buffer_pool_instances设定为4

innodb_buffer_pool_chunk_size

innodb_buffer_pool_size的动态调整是建立在innodb_buffer_pool_chunk_size基础之上的,innodb_buffer_pool_chunk_size用于动态调整时优化移动的速度。

设定方式和准则:
innodb_buffer_pool_chunk_size=innodb_buffer_pool_size/innodb_buffer_pool_instances
8G的innodb_buffer_pool_size +

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值