数据库系统概论-第10章数据库恢复技术

10.1事务的基本概念

①事务:用户宝义的一个数据库操作序列,是一个不可分割的工作单位。一个程序中包含多个事务。

事务通常是以BEGIN TRANSACTION开始,以COMMIT或ROLLBACK结束。COMMIT表示提交。ROLLBACK表示回滚,即在事务运行过程中发失了故障,事务无法继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。

②事务的ACID特性

原子性,一致性,隔离性,持续性。

事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。

并发执行的各个事务之间不能互相干扰。

事务ACID特性可能遭到破坏的因素:多个事务并行运行时,不同事务的操作交叉执行。事务在运行过程中被强行停止。

10.2数据库恢复概述

把数据库从错误状态恢复到某一已知的正确状态的功能就是数据库的恢复。恢复子系统是数据库管理系统的一个重要组成部分,常占整个系统代码的10%以上。

10.3故障的种类

①事务内部的故障。

②系统故障。

③介质故障。

系统故障常称为软故障,介质故障称为硬故障。

10.4恢复的实现技术

建立见余数据最常用的技术是数据转储和登记日志文件。通常两种方法一起使用。

10.4.1数据转储

数据库管理员定期地将整个数据库复制到磁带,磁盘或其他存储介质上保存起来的过程。备用数据常称后备副本。

转储可分静态转储和动态转储。

静态转储是在系统无运行事务时进行的转储操作。简单,但会降低数据库的可用性。

动态转储指转储期间允许对数据库进行存取或修改。即转储和用户事务可以并发执行。但转储结束时后援副本上的数据并不能保证正确有效。

还可分为海量转储和增量转储。海量转储是指每次转储全部数据库,增量转储则指每次只转储上一次转储后更新过的数据。

10.4.2登记日志文件

格式和内容。日志文件用来记录事务对数据库的更新操作的文件。

两种格式:以记录为单位的日志文件和以数据块为单位的日志文件。

作用:①事务故障恢复和系统故障恢复必须用日志文件。②在动态转储方式中必须建立日志文件。③在静态转储方式中也可以建立日志文件。

相关推荐
2301_783848652 小时前
优化文本分类中堆叠模型的网格搜索性能:避免训练卡顿的实战指南
jvm·数据库·python
TE-茶叶蛋3 小时前
DBeaver 的Explain 执行计划,分析sql的性能
数据库·sql
CLX05053 小时前
如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署
jvm·数据库·python
m0_617493943 小时前
PySide6 网络请求深度实测:从基础 API 调用到数据解析实战指南
数据库
知识汲取者4 小时前
每日一篇高频面试题系列之【MySQL 锁】
数据库·mysql
老纪4 小时前
SQL中如何查找特定的空值行:WHERE IS NULL深度解析
jvm·数据库·python
麦聪聊数据4 小时前
数据 API 平台选型:深度解读数据服务的四大关键技术与架构底座
数据库·sql
IT研究所4 小时前
AI 时代下的知识管理:从 Claude 的“复盘”能力看生成式 AI价值
大数据·运维·数据库·人工智能·科技·低代码·自然语言处理
2301_781571424 小时前
mysql数据库响应缓慢如何排查_使用EXPLAIN分析执行计划
jvm·数据库·python
彳亍1015 小时前
实现倒计时数字在到达1后自动隐藏(2为最后可见数字),同时继续运行至-1再终止
jvm·数据库·python