事务( Transaction) 用户定义的一个对数据库读写操作序列 是数据库中不可分割的执行单位 是数据库恢复和并发控制的基本单位 数据库系统中通常有多个事务并行运行 ■事务结束( Commit/ Rollback)后,数据库应该从一个 致状态进入到另一个一致状态 Consistent dB Consistent dB
16 事务(Transaction) 用户定义的一个对数据库读写操作序列 是数据库中不可分割的执行单位 是数据库恢复和并发控制的基本单位 数据库系统中通常有多个事务并行运行 事务结束(Commit / Rollback)后,数据库应该从一个 一致状态进入到另一个一致状态 Consistent DB T Consistent DB’
事务的性质(ACID特性) 原子性( Atomicity) 事务中的操作要么都做,要么都不做(A11 or none) 致性( Consistency) 事务执行的结果必须使数据库从一个一致性状态变到另一个一致性 状态 与原子性密切相关 隔离性( Isolation 并发执行的各事务不能相互干扰 持久性( usability) ■事务一旦提交,它对数据库的更新不再受后继操作或故障的影响 ★DBMS中事务处理必须保证其ACID特性,这样才能保证数据库中数据 的安全和正确 ★保证事务正确执行是事务管理器的工作 17
17 事务的性质(ACID特性) 原子性(Atomicity) 事务中的操作要么都做,要么都不做 (All or None) 一致性(Consistency) 事务执行的结果必须使数据库从一个一致性状态变到另一个一致性 状态 与原子性密切相关 隔离性(Isolation) 并发执行的各事务不能相互干扰 持久性(Durability) 事务一旦提交,它对数据库的更新不再受后继操作或故障的影响 ★ DBMS中事务处理必须保证其ACID特性,这样才能保证数据 库中数据 的安全和正确 ★ 保证事务正确执行是事务管理器的工作
DBMS的系统组成 查询处理器k事务管理器日志管理器 缓冲区管理器 恢多 复管理器 数据 日志
18 DBMS的系统组成 查询处理器 事务管理器 日志管理器 缓冲区管理器 恢复管理器 数据 日志
事务管理器 将关于事务动作的消息传给日志管理器 将关于何时可以或必须将缓冲区拷回磁盘的消息传给缓冲区管理器 将数据库查询等操作消息传给查询处理器 恢复管理器 当系统崩溃时,恢复管理器被激活 它检查日志并在必要时利用日志快复数据 日志管理器 维护日志,记录所有对数据库的修改操作 必须与缓冲区管理器打交道,因为对磁盘的访问是通过缓冲区管理 器来进行的 ■缓冲区管理器 分配、管理和回收缓冲区 决定何时将缓冲区的数据写回磁盘(立即修改/延迟修改)
19 事务管理器 将关于事务动作的消息传给日志管理器 将关于何时可以或必须将缓冲区拷回磁盘的消息传给缓冲区管理器 将数据库查询等操作消息传给查询处理器 恢复管理器 当系统崩溃时,恢复管理器被激活 它检查日志并在必要时利用日志恢复数据 日志管理器 维护日志,记录所有对数据库的修改操作 必须与缓冲区管理器打交道,因为对磁盘的访问是通过缓冲区管理 器来进行的 缓冲区管理器 分配、管理和回收缓冲区 决定何时将缓冲区的数据写回磁盘(立即修改/延迟修改)