MYsql中BufferPool缓存机制

1.当修改一条数据时,会将数据从磁盘文件中读入到缓存中,

2.然后将此版本记录到undolog日志文件中生成版本链,便于回滚

3.更新bufferpool中的数据

4.将缓存的数据记录到redolog buffer中

5.当事务进行提交将redolog buffer中的数据写入redolog日志文件中并将此次数据操作记录到binlog日志文件中

6.当事务提交完成,会通过binlog日志文件将数据redolog中的数据进行标记,保证数据提交后两个日志的数据一致

7.然后就是buffer pool中的数据会以页为单位隔一段时间刷入到磁盘中

binlog是用来恢复数据库中的数据,比如不小心删库跑路了,那么可以通过binlog来恢复

redolog是用来当事务提交之后,buffer pool中的数据还没来的及写入到磁盘中,此时系统宕机,那么可以使用redolog进行恢复bufferpool中的缓存数据

posted @ 2022-10-18 00:34  京木木  阅读(135)  评论(0)    收藏  举报