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

10.1事务的基本概念

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

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

②事务的ACID特性

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

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

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

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

10.2数据库恢复概述

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

10.3故障的种类

①事务内部的故障。

②系统故障。

③介质故障。

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

10.4恢复的实现技术

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

10.4.1数据转储

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

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

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

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

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

10.4.2登记日志文件

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

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

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

相关推荐
ccddsdsdfsdf4 小时前
DBeaver怎么链接mongoDB
数据库·mongodb
丷丩5 小时前
Postgresql基础实践教程(十一)各种Join
数据库·postgresql·join
星夜夏空995 小时前
FreeRTOS学习(4)——内存映射
数据库·学习·mongodb
TheRouter6 小时前
AI Agent 记忆体系建设实战:短期、长期与工作记忆的工程实现
数据库·人工智能·oracle
Omics Pro6 小时前
首个!外源天然产物综合性代谢图谱
数据库·人工智能·算法·机器学习·r语言
JAVA面经实录9177 小时前
Hibernate面试题库
数据库·oracle·hibernate
迷枫7128 小时前
DM8 目录结构与常用排查入口梳理
服务器·数据库
Mr.Daozhi9 小时前
RAG 进阶实战:跑通 Demo 后我连续翻了 6 次车,逐一修复才真正可用(含 Gradio Web 版)
前端·数据库·langchain·大模型·gradio·rag·科研工具
小程故事多_809 小时前
Claude Code自定义workflow skills用法
数据库·人工智能·智能体
大鹏说大话9 小时前
SQL 排序与分组实战:解决“分组后取最新数据“
android·java·数据库