a ☒ 《数据库原理及应用》 第6章数据库恢复 新疆大学软件学院 钱育蓉 qyr@xju.edu.cn 2025年2月24日星期一 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 新疆大学 软件学院 钱育蓉 qyr@xju.edu.cn 2025年2月24日星期一 《数据库原理及应用》 第6章 数据库恢复
本章内容 @ 事务概念 数据库恢复概述 3 数据库恢复实现技术 故障的种类及恢复策略 *RAID 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 1 Click to add Title 事务概念 2 Click to add Title 数据库恢复概述 23 Click to add Title 数据库恢复实现技术 14 Click to add Title 故障的种类及恢复策略 15 Click to add Title *RAID
享务 问题提出 ☒ ■产生不一致的结果 ◆调价:故障可能使部分价格调整而另一部分价格没有调整。 ■并发执行的错误 ◆并行执行应用程序可以提高性能 ◆但可能数据相互覆盖 ◆例如:程序1将A提价10%,程序2将A涨价10元。 ■何时更新数据库 ◆读数据库:将数据库中的数据先从磁盘读入内存,然后再将值赋予一 个变量。 ◆写数据库:先将变量的值写入内存,然后再由内存写入磁盘。 ◆减少磁盘I/0操作与防止数据不一致的权衡(内存中数据的存放时间) 学以致用 用以促学 DATABASE@UESTC
学以致用 DATABASE@UESTC 用以促学 ◼ 产生不一致的结果 ◆调价:故障可能使部分价格调整而另一部分价格没有调整。 ◼ 并发执行的错误 ◆并行执行应用程序可以提高性能 ◆但可能数据相互覆盖 ◆例如:程序1将A提价10%,程序2将A涨价10元。 ◼ 何时更新数据库 ◆读数据库:将数据库中的数据先从磁盘读入内存,然后再将值赋予一 个变量。 ◆写数据库:先将变量的值写入内存,然后再由内存写入磁盘。 ◆减少磁盘I/O操作与防止数据不一致的权衡(内存中数据的存放时间)
中务 事务状态 @ 开始 活动状态 操作结束状态 提交状态 结束 失败状态 中止状态 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 活 动 状 态 操 作 结 束 状 态 提 交 状 态 失 败 状 态 中 止 状 态 开 始 结 束
享务 定义 ☒ ■事务的显式定义 BEGIN TRANSACTION BEGIN TRANSACTION SQL语句1 SQL语句1 SQL语句2 S0L语句2 ■■ n■ COMMI T ROLLBACK END TRANSACT ION END TRANSACTION ■没有显式地定义事务时,DBMS按缺省为自动划分事务 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 ◼ 事务的显式定义 BEGIN TRANSACTION BEGIN TRANSACTION SQL 语句1 SQL 语句1 SQL 语句2 SQL 语句2 . . COMMIT ROLLBACK END TRANSACTION END TRANSACTION ◼ 没有显式地定义事务时,DBMS按缺省为自动划分事务
中务 特性 (ACID) ■原子性(Atomicity) ◆事务的所有操作在数据库中要么全部正确反映,要么全部不反映。 ◆解决不一致问题。 ◆在系统崩溃后,DBMS将恢复或撤销系统崩溃时处于活动状态的事务对 数据库产生的影响,从而保证事务的原子性。 ◆事务原子性由事务管理部件(Transact ion-Management Component) 处理。 ■一致性(Consi stency) ◆是指当事务完成时,必须使所有数据都具有一致的状态。 ◆主要由应用开发人员来确保。 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 ◼ 原子性(Atomicity) ◆事务的所有操作在数据库中要么全部正确反映,要么全部不反映。 ◆解决不一致问题。 ◆在系统崩溃后,DBMS将恢复或撤销系统崩溃时处于活动状态的事务对 数据库产生的影响,从而保证事务的原子性。 ◆事务原子性由事务管理部件(Transaction-Management Component) 处理。 ◼ 一致性(Consistency) ◆是指当事务完成时,必须使所有数据都具有一致的状态。 ◆主要由应用开发人员来确保
享务 特性 (ACID) ☒ ■ 隔离性(Isolation) ◆当多个事务并发执行时,一个事务的执行不能被其他事务干扰。 ◆解决前面提到的并发执行带来的错误问题。 ◆由于性能的原因,需要对事务进行交叉调度,但交错调度的效果应该 和某个串行调度的结果是一致的。 ◆隔离性通过数据库系统中的并发控制部件(Concur rency-Control Component)处理。 ■持续性(Durability) ◆一个事务一旦提交,它对数据库中数据的改变应该是永久性的,即使 系统可能出现故障。 ◆持续性由数据库系统中的恢复管理部件(Recovery-Management Component)的软件部件负责。 学以致用 用以促学 DATABASE@UESTC
学以致用 DATABASE@UESTC 用以促学 ◼ 隔离性(Isolation) ◆当多个事务并发执行时,一个事务的执行不能被其他事务干扰。 ◆解决前面提到的并发执行带来的错误问题。 ◆由于性能的原因,需要对事务进行交叉调度,但交错调度的效果应该 和某个串行调度的结果是一致的。 ◆隔离性通过数据库系统中的并发控制部件(Concurrency-Control Component)处理。 ◼ 持续性(Durability) ◆一个事务一旦提交,它对数据库中数据的改变应该是永久性的,即使 系统可能出现故障。 ◆持续性由数据库系统中的恢复管理部件(Recovery-Management Component)的软件部件负责
本章内容 @ 事务概念 数据库恢复概述 3 数据库恢复实现技术 故障的种类及恢复策略 *RAID 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 1 Click to add Title 事务概念 2 Click to add Title 数据库恢复概述 23 Click to add Title 数据库恢复实现技术 14 Click to add Title 故障的种类及恢复策略 15 Click to add Title *RAID
恢复概述 ☒ ■数据库系统对付故障的两种措施 ◆预防故障:尽可能提高系统的可靠性; ◆在系统发生故障后,把数据库恢复到一致状态。 ■恢复机制涉及两个关键问题 ◆如何建立冗余数据 ◆如何利用冗余数据实施数据库恢复 ■恢复技术是衡量数据库管理系统优劣的重要指标 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 ◼ 数据库系统对付故障的两种措施 ◆预防故障:尽可能提高系统的可靠性; ◆在系统发生故障后,把数据库恢复到一致状态。 ◼ 恢复机制涉及两个关键问题 ◆如何建立冗余数据 ◆如何利用冗余数据实施数据库恢复 ◼ 恢复技术是衡量数据库管理系统优劣的重要指标
本章内容 @ ☒ 事务概念 数据库恢复概述 数据库恢复实现技术 故障的种类及恢复策略 *RAID 学以致用 DATABASE@UESTC 用以促学
学以致用 DATABASE@UESTC 用以促学 1 Click to add Title 事务概念 2 Click to add Title 数据库恢复概述 23 Click to add Title 数据库恢复实现技术 14 Click to add Title 故障的种类及恢复策略 15 Click to add Title *RAID