在进行更改时,将数据页从数据库数据文件中提取到缓冲区中,并对缓冲区页进行更改,并将更改写入事务日志。先写日志记录。在简单恢复模式下,缓冲区中的更改将应用于检查点处的数据库数据页。检查点从事务日志中刷新记录。因此,不能在此模式下进行事务日志备份。类似地,对于尚未进行完整备份的完整/批量恢复模型。
问题:一旦进行了第一次完全备份,对数据页的更改将如何以及何时写入完整/批量恢复模型中的数据库数据文件?
发布于 2018-10-15 09:59:08
根据服务器事务日志体系结构和管理指南,数据页首先在缓存中修改(逻辑写入)。无论数据库恢复模型如何,这种情况发生的方式都是相同的,只有日志记录细节的级别不同。创建包含修改的事务日志记录并写入日志缓冲区缓存。这些日志缓冲区总是在修改后的页面(预写日志记录)之前被物理地写入磁盘。
可以编写数据页。到磁盘由懒惰写入、急写和检查点进程。在相应的数据页被这些进程写入数据文件之前,日志缓冲区被刷新到磁盘。
事务日志缓冲区在以下情况下物理地写入磁盘:( 1)它们已满;( 2)在提交期间,当日志缓冲区包含持久事务的数据时;( 3)检查点;或( 4)上述进程之一将修改过的页写入磁盘。
https://dba.stackexchange.com/questions/220098
复制相似问题