14.2 InnoDB 和 ACID 模型

ACID模型是一组数据库设计原则,这些原则强调了对于业务数据和关键任务应用程序很重要的可靠性方面。 MySQL 包含诸如InnoDB存储引擎之类的组件,这些组件与 ACID 模型紧密相关,因此数据不会损坏,结果不会因软件崩溃和硬件故障等异常情况而失真。当您依靠符合 ACID 的功能时,无需重新发明一致性检查和崩溃恢复机制。如果您有其他软件保护措施,超可靠的硬件或可以容忍少量数据丢失或不一致的应用程序,则可以调整 MySQL 设置以牺牲一些 ACID 可靠性,以获得更高的性能或吞吐量。

以下各节讨论 MySQL 功能(尤其是InnoDB存储引擎)如何与 ACID 模型的类别进行交互:

Atomicity

ACID 模型的“原子性”方面主要涉及InnoDB transactions。相关的 MySQL 功能包括:

Consistency

ACID 模型的“一致性”方面主要涉及内部InnoDB处理,以防止数据崩溃。相关的 MySQL 功能包括:

Isolation

ACID 模型的“隔离”方面主要涉及InnoDB transactions,尤其是适用于每个事务的isolation level。相关的 MySQL 功能包括:

Durability

ACID 模型的“耐用性”方面涉及与您的特定硬件配置交互的 MySQL 软件功能。由于取决于您的 CPU,网络和存储设备的功能的可能性很多,因此为具体的准则提供最复杂的方面。 (这些准则可能采取购买“新硬件”的形式.)相关的 MySQL 功能包括:

首页