mysql预热方式_给从库预热innodb buffer pool

最近在生产上做了一个

mysql

主从切换的操作,当从库提升为主后,发现从库一开始压力异常大,分析原因应该是从库的

innodb_buffer_pool

的热数据没有立即加载进来,导致发生大量磁盘读了。我们的

innodb_buffer_pool

设置大小为

42G

,所以大约持续了

100

分钟,才使得业务恢复正常。

后来想想应该可以把主库

innodb buffer pool

里面的热数据

dump

成磁盘文件,然后把这个磁盘文件拷贝到从库,让从库从

dump

出的这个磁盘文件把热数据加载到从库的

innodb buffer pool

里面。于是我查看

MySQL

官方文档,并找到了这样的解决办法。

具体步骤如下

1

)在主库上,执行如下命令,把

innodb_buffer_pool_dump_pct

设置成

40%

,表示要把

innodb buffer pool 40%

(根据情况也可以设置为

100%

)的热数据

dump

到磁盘文件

/data/ib_buffer_pool

里面:

mysql>SET GLOBAL innodb_buffer_pool_dump_pct=40;

2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值