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

10.1事务的基本概念

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

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

②事务的ACID特性

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

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

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

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

10.2数据库恢复概述

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

10.3故障的种类

①事务内部的故障。

②系统故障。

③介质故障。

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

10.4恢复的实现技术

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

10.4.1数据转储

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

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

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

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

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

10.4.2登记日志文件

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

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

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

相关推荐
这个DBA有点耶1 小时前
2026年分布式数据库有哪些主流选择?先评估这5个维度再决定
数据库·分布式·dba
这个DBA有点耶4 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
胡写代码4 小时前
数据库审计字段,别再每张表各写一套了——我统一成这 6 个字段
数据库
SelectDB8 小时前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent
ClouGence9 小时前
开源数据库管理工具 CloudDM 4.2.0 发布,新增 GoldenDB、KingbaseES 等数据源
数据库·dba·devops
发霉的馒头9 小时前
ORA-00845: MEMORY_TARGET not supported on this system的解决方法
数据库
草莓熊Lotso11 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
煎饼皮皮侠13 小时前
【设计】设计一个web版的数据库管理平台后端(之五) --借鉴mybatis
数据库·mybatis
东风破_19 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
橙子家20 小时前
OSS 文件上传的几个风险点和解决方案
数据库