InnoDB 通过调用一个模糊的检查点来实现检查点机制。InnoDB 以很小的批量从缓冲池中刷新修改了的数据库页面。这就不需要在一个批量中刷新整个缓冲池,
因这个实话上将可能停止用户 SQL 语句运行进程一段时间。
In crash recovery InnoDB 在崩溃修复时会检查记录在日志文件中的检查点标签。它知道,在标签前所有对数据库的修改已被记录到数据库的磁盘镜像中。
然后InnoDB 扫描日志文件中检查点后面的日志并将修改记入数据库。
InnoDB 以一个环形方式记录日志文件。所有使缓冲池中的数据库页面与磁盘镜像不相同已提交了的修改必须记录在日志文件中,以防 InnoDB 需要恢复。
这就意味着 InnoDB 以环形方式重新启用一个日志文件,它必须确定将被重新使用的日志文件中的操作日志结果已被磁盘镜像文件包含。用另一句话来说
就是,InnoDB 必须时常地建立检查点并将修改了的数据库页面更新到磁盘中。
文章标题:MySQLInnoDB检查点机制
网站网址:
http://bjjierui.cn/article/igjehe.html