本文主要向大家介绍了MySQL数据库之mysql原理~LSN那点事情 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。
一 简介:今天咱们来聊聊LSN号二 查看lsn: show engine innodb status
Log sequence number 2687274848548 Log flushed up to 2687274848516 Pages flushed up to 2687273963960 Last checkpoint at 2687273963960
1 简单说明
Log sequence number: 当前系统最大的LSN号 log flushed up to:当前已经写入redo日志文件的LSN pages flushed up to:已经将更改写入脏页的lsn号 Last checkpoint at就是系统最后一次刷新buffer pool脏中页数据到磁盘的checkpoint 2 以上4个LSN是递减的,即: LSN1>=LSN2>=LSN3>=LSN4.三 内容
每个数据页有LSN,重做日志有LSN,checkpoint有LSN。
四 定义说明 1 LSN(log sequence number)日志序列号,5.6.3之后占用8字节,LSN主要用于发生crash时对数据进行recovery,LSN是一个一直递增的整型数字,表示事务写入到日志的字节总量。 LSN不仅只存在于重做日志中,在每个数据页头部也会有对应的LSN号,该LSN记录当前页最后一次修改的LSN号,用于在recovery时对比重做日志LSN号决定是否对该页进行恢复数据。前面说的checkpoint也是有LSN号记录的,LSN号串联起一个事务开始到恢复的过程。
本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!