事务故障、系统故障和介质故障的恢复
数据库系统-故障与恢复:事务故障、系统故障和介质故障的恢复
- 1,事务故障的恢复
- 2,系统故障的恢复
- 3,介质故障的恢复:重装数据库,然后重做已完成的事务。
1,事务故障的恢复
(1) 反向扫描日志文件,查找该事务的更新操作。
(2) 对该事务的更新执行逆操作,即将日志记录中“更新前的值”写入数据库。
(3) 继续反向扫描日志文件,查找该事物的其它更新操作,并做同样处理。
(4) 如此继续下去,直到读到此事务的开始标记,事务故障恢复就完成了。
2,系统故障的恢复
(1) 正向扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入重做队列(REDO-LIST)。同时找出故障发生时尚未完成的事务,将其事务标识记入撤销队列。
(2) 对撤销对列中的各个事务进行撤销处理。进行撤销处理的方法是,反向扫描日志文件,对每个撤销事务的更新操作执行逆操作,即将日志记录中“更新前的值”写入数据库。
(3) 对重做队列中的各个事务进行重做处理。进行重做处理的方法是:正向扫描日志文件,对每个重做事务重新执行日志文件登记的操作,即将日志记录中“更新后”的值写入数据库。
3,介质故障的恢复:重装数据库,然后重做已完成的事务。
(1) 装入最新的数据库后备副本(离故障发生时刻最近的转储副本),使数据库恢复到最近一次转储时的一致性状态。
(2) 转入相应的日志文件副本,重做已完成的事务。即首先扫描日志文件,找出故障发生时已提交的事物的标识,将其记入重做队列;然后正向扫描日志文件,对重做队列中的所有事务进行重做处理。即将日志记录中“更新后的值”写入数据库。
参考资料:数据库系统概论(第五版)王珊,高等教育出版社
事务故障、系统故障和介质故障的恢复相关推荐
- 关系数据库——数据库恢复
实现技术 恢复操作的基本原理:冗余 恢复机制涉及的两个关键问题 如何建立冗余数据 数据转储(backup) 登录日志文件(logging) 如何利用这些冗余数据实施数据库恢复 数据转储 数据转储定 ...
- 超硬核!数据库学霸笔记,考试/面试随便秒杀
废话不多说,上干货是兔老大的传统了,收藏就完事了. 目录 数据库系统概论 四个基本概念 数据模型 数据库系统结构 数据库系统模式的概念 数据库系统的三级模式结构 数据库的二级映像功能与数据的独立性 数 ...
- 软考数据库详细知识点整理(全)
目录 第一章 计算机系统基本知识 1.1 计算机系统 1.1.1 计算机硬件组成 1.1.2 中央处理单元 1.1.3 数据表示 1.1.4 校验码 1.2 计算机体系结构 1.2.1 体系结构分类 ...
- 数据库原理与应用课程知识点
数据库原理与应用课程知识点 文章目录 数据库原理与应用课程知识点 **第一章 绪论** 数据.数据库.数据库管理系统.数据库系统的概念 数据管理技术发展的三个阶段及各阶段的优缺点 概念模型中的基本术语 ...
- 数据库笔记整理--基于《数据库系统概论》第五版王珊一书|复习提纲和错题整合
数据库原理复习大纲 第一章 数据库概述 1.1 概述 1.基本概念 数据库(DB).数据库管理系统(DBMS).数据库系统(DBS)概念 数据库是存储在计算机内.有组织的.可共享的数据集合. 数据库管 ...
- MySQL入门(持续更新)
文章目录 0.SQL概述总括 1.思维导图 2.入门SQL需要学习以下几个方面 3.SQL使用方式分类 一. 数据库基础概念 1.名词概念 2.数据库分类 3.数据库系统的体系结构(三级模式和两级映像 ...
- 《数据库系统概论》课程指南
<数据库系统概论>课程指南 课程目标 知识:掌握数据库系统的组成.关系数据库理论.数据库设计以及数据库编程.查询优化等方面的知识 能力: 具备分析问题并能进行数据库设计的能力 熟练掌握SQ ...
- 数据库系统概论:第十章 数据库恢复技术
事务是一系列的数据库操作,是数据库应用程序的基本逻辑单元.事务处理(transaction processing)技术主要包括数据库恢复技术和并发控制技术. 10.1 事务的基本概念 事务:是用户定义 ...
- 『数据库』你以为删库跑路就能让你老板内(lei)牛(liu)满面--数据库的恢复技术
数据库从入门到精通:戳我 文章目录 一. 事务的基本概念 1.事务 1.1what's the 事务: 1.2事务的定义 1.2.1 事务的显示定义 1.2.2 事务的隐式定义方式 2.事务的ACID ...
- 数据库恢复相关知识笔记
1.数据库恢复的原理 数据库恢复的原理主要是在数据库发生故障之后,建立冗余数据,在故障发生之后利用冗余数据来完成数据库恢复.数据转储和建立日志文件是建立冗余数据常用的技术手段.一般情况下两种技术手段会 ...
最新文章
- android系统可以破吗,你的手机系统破到什么程度?一键查安卓漏洞
- 【机器视觉】 Halcon批量加载图像
- NLTK自带的词干提取器
- python开发小型数据库_Python开发【第十七篇】:MySQL(一)
- 【深度学习之ResNet】——深度残差网络—ResNet总结
- ZZULIOJ 1062:最大公约数
- SQL中的数据转换服务,数据库迁移
- 人际沟通最忌讳一脸死相【转】
- html5开发桌面程序调用dll,使用Visual Studio开发Html5应用
- android 对象输出到文件
- Python获取实时的时间
- Gif图片分解(支持批量)
- 中长焦投影仪买哪款好,当贝X3高流明热销你值得看
- CDN加速技术可以解决网络客户的哪些痛点问题?
- 精心整理了50个数据源网站(建议收藏)
- NDK (C++) 开发中如何使用 ASan 检测内存越界、溢出等内存错误
- e.keycode 代码含义
- php订阅号发送消息,php实现微信公众号主动推送消息
- C++读txt文件,存入vector容器中
- 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)
热门文章
- 将中划线转为驼峰式写法
- selenium-登录腾讯防水墙案例
- spring学习笔记 (6)使用mybatis操作数据库增删改查
- 使用linaro工具链编译ARM64架构内核
- 网站嵌入YouTube视频
- 【直播】陈安东,马琦钧:赛题Baseline讲解以及语音识别基础知识介绍
- 用Java来解析torrent文件
- Schematic export failed or was cancelled. Please consult the transcript in the source windo
- windows远程桌面不能复制粘贴的解决办法
- 〖Python 数据库开发实战 - MySQL篇②〗- 一文通解关系型数据库与非关系型数据库