数据库事务管理与并发控制全解析
1. 事务日志
事务日志是数据库的关键部分,通常以一个或多个文件的形式实现,与实际数据库文件分开管理。在系统故障完成恢复时,数据库管理系统(DBMS)会将所有已提交但在故障发生前未物理写入数据库的事务写入日志。若在事务终止前发出回滚命令,DBMS 仅会为该特定事务恢复数据库,以维护先前事务的持久性,即已提交的事务不会回滚。
事务日志存在磁盘满、磁盘崩溃等常见风险,部分实现支持将日志存储在多个不同磁盘上,以降低系统故障的影响。以下是一个事务日志的示例:
| TRL_ID | TRX_NUM | PREV PTR | NEXT PTR | OPERATION | TABLE | ROW ID | ATTRIBUTE | BEFORE VALUE | AFTER VALUE |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| 341 | 101 | Null | 352 | START | *Start Transaction | | | | |
| 352 | 101 | 341 | 363 | UPDATE | PRODUCT | 1558 - QW1 | PROD_QOH | 25 | 23 |
| 363 | 101 | 352 | 365 | UPDATE | CUSTOMER | 10011 | CUST_BALANCE | 525.75 | 615.73 |
| 365 | 101 | 363 | Null | COMMIT | * End o
超级会员免费看
订阅专栏 解锁全文
4822

被折叠的 条评论
为什么被折叠?



