跳至主要內容

什么是Mysql事务?

fangzhipeng约 418 字大约 1 分钟

MySQL 中的事务(Transaction)是指一系列数据库操作(例如插入、更新、删除等),这些操作被视为一个逻辑单元,要么全部成功执行,要么全部失败回滚,以保持数据的一致性和完整性。

在 MySQL 中,事务由以下几个关键特性定义,通常缩写为 ACID:

  1. 原子性(Atomicity): 事务是一个不可分割的工作单位,要么全部执行成功,要么全部失败回滚,不存在部分执行的情况。

  2. 一致性(Consistency): 在事务开始之前和事务结束之后,数据库的完整性约束必须得到保持,即数据从一个一致状态转变为另一个一致状态。

  3. 隔离性(Isolation): 多个事务同时执行时,每个事务的操作互相独立,一个事务的执行不应该被其他事务所干扰。这意味着每个事务看到的数据应该是一致的数据库状态,而不是其他事务所做的中间结果。

  4. 持久性(Durability): 一旦事务提交成功,其对数据库的修改就应该是永久性的,即使系统发生故障或者重新启动,事务对数据库的修改也应该得到保持。

MySQL 的InnoDB数据库引擎支持事务,它使用 START TRANSACTIONCOMMITROLLBACK 等语句来管理事务。通过这些语句,可以明确地开始、提交或回滚事务,保证事务的原子性、一致性、隔离性和持久性。

方志朋_官方公众号
方志朋_官方公众号