重做日志用于重做已提交的事务。但是,提交事务的更新将在提交时写入磁盘。为什么DBMS使用重做日志?事务提交时DBMS实际上做了什么?谢谢!
答案 0 :(得分:0)
不完全;只有在以下3个条件都不适用的情况下,才会对可重做动作执行重做:(直接引自Ramakrishnan和Gehrke)
受影响的页面不在脏页表中。
受影响的页面位于脏页表中,但该条目的recLSN大于要检查的日志记录的LSN。
pageLSN(存储在页面上,必须检索以检查此情况)大于或等于要检查的日志记录的LSN。
如果这些都不成立,那基本上意味着该行动已成功提交。