1 .一种数据库的事务日志处理方法,包括:
获取到对缓存中的事务日志进行落盘的触发事件,其中,所述事务日志包括分开存储
在所述缓存中的组装链表和页数据链表,所述页数据链表为由所述事务日志中的页镜像数
据构成的链表,所述组装链表为由所述事务日志中除页镜像数据之外的其他数据构成的链
表,且所述页数据链表存储在预设的全局页数据链表中;
获得需要进行落盘的事务日志,记为可落盘日志;
根据所述可落盘日志的日志序列号在所述全局页数据链表中查找对应的页数据链表,
记为可落盘页数据链表;
将所述可落盘页数据链表中的页镜像数据存入预设的页镜像数据存储表中。
2 .根据权利要求1所述的数据库的事务日志处理方法,其中,所述获得需要进行落盘的
事务日志的步骤之前包括:
将所述全局页数据链表中的页数据链表按照日志序列号进行升序排列。
3 .根据权利要求2所述的数据库的事务日志处理方法,其中,所述获得需要进行落盘的
事务日志的步骤包括:
获取所述可落盘日志的日志序列号范围;
根据所述可落盘日志的日志序列号在所述全局页数据链表中查找对应的页数据链表
的步骤包括:
在所述全局页数据链表中查找日志序列号大于等于所述日志序列号范围的最小值和
小于等于所述日志序列号范围的最大值的页数据链表。
4 .根据权利要求2所述的数据库的事务日志处理方法,其中,所述获得需要进行落盘的
事务日志的步骤包括:
获取所述缓存中符合预设落盘规则的事务日志,记为所述可落盘日志,所述符合预设
落盘规则的事务日志为从上次落盘完成的最后一个事务日志的日志序列号开始,日志序列
号保持连续的至少一个已经完整写入缓存中的事务日志。
5 .根据权利要求4所述的数据库的事务日志处理方法,其中,所述将所述可落盘页数据
链表中的页镜像数据存入预设的页镜像数据存储表中的步骤包括:
将所述可落盘页数据链表中的页镜像数据按照在所述全局页数据链表中的排列顺序
存入所述页镜像数据存储表的最后方。
6 .根据权利要求5所述的数据库的事务日志处理方法,其中,所述页镜像数据存储表存
在日志序列号字段,所述日志序列号字段用于存储所述页镜像数据的日志序列号。
7 .根据权利要求1所述的数据库的事务日志处理方法,其中,所述将所述可落盘页数据
链表中的页镜像数据存入预设的页镜像数据存储表中的步骤之后包括:
将所述可落盘日志的组装链表部分存入磁盘。
8.根据权利要求1所述的数据库的事务日志处理方法,其中,所述将所述可落盘页数据
链表中的页镜像数据存入预设的页镜像数据存储表中的步骤之后包括:
将所述可落盘页数据链表从所述全局页数据链表移除。
9 .一种机器可读存储介质,其上存储有机器可执行程序,所述机器可执行程序被处理
器执行时实现根据权利要求1至8任一项所述的数据库的事务日志处理方法。
10.一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运
权 利 要 求 书
1/2 页
2
评论