MySQL服务端innodb_buffer_pool_size配置参数

innodb_buffer_pool_size是什么?

innodb_buffer_pool是 InnoDB 缓冲池,是一个内存区域保存缓存的 InnoDB 数据为表、索引和其他辅助缓冲区。innodb_buffer_pool_size 是这个缓冲池的大小,默认128M(即134217728 bytes)。

innodb_buffer_pool_size有什么用?

如果不设置innodb_buffer_pool_size,在生产环境的sql执行效率将大大下降,原因是缓存的空间变小,能缓存的数据量有限,缓存的命中率大打折扣,会导致反复去磁盘上读数据,众所周知磁盘的速度远远低于内存的执行效率。

innodb_buffer_pool_size的值配置有什么要求?

innodb_buffer_pool_size的值必须是(innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances)的整数倍,即可以相等或更大。

-- 显示当前使用的innodb缓冲池大小 及 缓冲池实例数与主干大小
SELECT @@innodb_buffer_pool_size as pool_size,
@@innodb_buffer_pool_instances as pool_instances,
@@innodb_buffer_pool_chunk_size as chunk_size;

innodb_buffer_pool_size设置方式

两种设置方式,区别在于MySQL的运行状态,静态设置需要重启MySQL,动态设置在MySQL运行期动态调整。

静态设置

  • 修改my.cnf,在[mysqld]作用域添加innodb_buffer_pool_size=计算值
  • 重启mysql。

动态设置

  • 执行SET GLOBAL innodb_buffer_pool_size=计算值; 设置缓冲池大小。
  • 执行SHOW STATUS WHERE Variable_name='InnoDB_buffer_pool_resize_status'; 查询缓冲池大小改变状态,出现 Completed resizing buffer pool at 时间戳 即完成。
  • 执行SELECT @@innodb_buffer_pool_size; 查询当前缓冲池大小。
MySQL服务端参数的调优可以提高数据库的性能和稳定性,以下是一些常用的调优方法和参数: 1. 调整缓冲区大小:通过调整缓冲区大小可以减少磁盘I/O,提高数据库性能。可以通过修改以下参数进行调整: - `innodb_buffer_pool_size`:InnoDB引擎使用的缓冲池大小。 - `key_buffer_size`:MyISAM引擎使用的缓冲池大小。 2. 调整连接数:可以通过修改以下参数来调整最大连接数: - `max_connections`:设置MySQL服务器允许的最大并发连接数。 - `back_log`:当有新连接请求时,如果所有连接都在使用中,则可以将请求放入等待队列中等待连接释放。该参数定义了等待队列的大小。 3. 优化查询缓存:查询缓存可以减少查询时间,但是对于频繁更新的表不适用。可以通过以下参数进行调整: - `query_cache_type`:设置查询缓存类型,可以为0、1或2,分别表示关闭查询缓存、启用查询缓存(默认)或仅缓存SQL语句。 - `query_cache_size`:设置查询缓存的大小。 4. 调整日志文件大小:可以通过以下参数调整日志文件大小,以便控制日志文件的数量和大小: - `max_binlog_size`:二进制日志文件的最大大小。 - `innodb_log_file_size`:InnoDB日志文件的大小。 5. 优化表结构:可以通过调整表结构来优化查询性能,例如添加索引、合并表等。 需要注意的是,不同的MySQL版本和不同的应用场景可能需要不同的参数设置,因此需要根据具体情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东北小狐狸-Hellxz

请作者喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值