首页 > 解决方案 > 如果在数据库事务发生的那一刻断电会发生什么?

问题描述

交易被理解为保证某事不发生或不发生的概念。如果系统物理写入磁盘以应用事务并且发生断电怎么办?

标签: databasetransactions

解决方案


正如事务的 ACID-Properties 所定义的那样:如果事务提交在系统关闭之前成功返回,则可以保证更改已被持久化。如果它没有返回,但正在处理提交。重新启动 dbms 后存在以下可能性:

  • 数据库处于提交的事务开始之前的状态
  • 数据库处于这样一种状态,即正在提交的事务的所有更改都已被持久化,并且可以随后找到。

推荐阅读