随笔 - 116  文章 - 5  评论 - 1  阅读 - 14万

innodb_fast_shutdown 参数

GreatDB 在离线升级时要求参数innodb_fast_shutdown为0,借此研究一下此参数的作用吧。

 

 在mysql关闭时,参数innodb_fast_shutdown 影响着表的存储引擎为innodb的行为。参数可选值包含0,1,2三个值,默认值为1,可动态修改。

0:代表当MYSQL关闭时,Innodb需要完成所有full purge和change buffer merge操作,这需要花费时间来完成。如果做Innodb plugin升级,通常需要将这个参数调         为0,然后在关闭数据库
1: 是参数的默认值,不需要完成full purge和change buffer merge操作,但是在缓冲池的一些数据脏页还是会刷新到磁盘。
2 :表示不需要完成full purge和merge insert buffer操作 ,也不将缓冲池中的数据脏页写回磁盘,。而是将日志都写入日志文件。这样不会有任何事物丢失,但是mysql在下次启动时,会执行恢复操作(recovery)

如果在上次关闭innodb的时候是在innodb_fast_shutdown=2或是mysql crash这种情况,那么它会利用redo log重做那些已经提交了的事务。
接下来的操作过程是:
(1). Rollback uncompleted transitions 取消那些没有提交的事务
(2). Purge all 清除无用的undo页
(3). change buffer merge 合并插入缓冲

posted on   JennyYu  阅读(197)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示