InnoDB 1.1.X(MySQL5.5)数据预热 --- 持续更新

本文介绍了一种针对MySQL 5.5及更早版本的手动预热InnoDB Buffer Pool的方法,通过将热数据缓存到磁盘文件,在重启时快速加载到内存,以减少性能下降的时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

线上服务器在重启过后,由于innodb buffer pool被清空,往往在最开始一段时间的性能会很差,当用户量特别大的高峰时期更是如此。MySQL 5.6 将 InnoDB版本升级到1.2.X后,提供了一共5个新的参数用于配置预热功能,将innodb buffer pool中的热块缓存到磁盘文件ib_buffer_pool中,待重启时再加载到内存中。

本文是对生产环境下,部分使用5.5及更早版本的数据库服务器没有该参数可供选择的情况下,提供了一个手动预热的方法。

SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES

【编辑中】

。。。



【编辑中】


可以将该sql写在配置文件中(加入init-file=~/init.sql),方便每次重启mysql后自动执行预热sql


注,mysql5.6异常关闭时,预热功能正常?


参考:

https://dev.mysql.com/doc/refman/5.6/en/innodb-preload-buffer-pool.html

https://blog.marceloaltmann.com/en-warm-up-innodb-buffer-pool-pt-esquentando-o-innodb-buffer-pool/

https://stackoverflow.com/questions/3430865/how-to-preload-tables-into-innodb-buffer-pool-with-mysql

http://mysqlserverteam.com/mysql-dumping-and-reloading-the-innodb-buffer-pool/

http://imysqldba.blog.51cto.com/1222376/1119804


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值