| 用途 | 原子性操作组 |
|---|---|
| 语句 | START TRANSACTION / COMMIT / ROLLBACK / SAVEPOINT |
| 默认隔离级别 | REPEATABLE READ |
基本事务
基本事务
START TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT; -- 或 ROLLBACK;保存点
保存点
START TRANSACTION;
INSERT INTO audit_log(msg) VALUES ('begin');
SAVEPOINT sp1;
UPDATE counters SET cnt = cnt + 1 WHERE id = 7;
ROLLBACK TO sp1;
COMMIT;长事务会撑大回滚段、阻塞 DDL 与复制;事务里不要夹带网络调用或人工等待。