【数据库系统及应用】— 日志、故障恢复、事务、并发控制、调度、检查点

news/2024/10/19 23:24:12/
  1. 日志文件是用于记录__________。
    A、数据操作
    B、程序运行过程
    C、程序执行结果
    D、对数据的所有更新操作

  2. 下列说法正确的是__________。
    A、事务故障可以通过运行日志进行恢复
    B、介质故障只需将备份恢复到系统中即可实现正确性
    C、检查点是指检查发生故障并进行恢复的时刻点
    D、检查点是DBMS强制使内存DB Buffer中的内容与介质

    选项A的说法是不正确的,事务故障仅影响事务本身,可通过撤销事务和重做事务来进行恢复。选项B的说法是不正确的,介质故障在将备份恢复到系统中后还需要利用运行日志才能恢复到故障点时刻的正确状态。选项C的说法是不正确的,检查点是DBMS强制使数据库缓冲区内容与介质内容保持一致的时刻点。选项D的说法是正确的。

  3. 介质故障的恢复需要_________。
    A、当前执行完的事务需要按照运行日志记录的次序重做
    B、当前未执行完的事务撤销
    C、用最新的备份文件替换发生故障的数据库文件
    D、以上工作都需要,但需要注意操作的次序。

  4. 数据库中的封锁机制是__________的主要方法。
    A、完整性控制
    B、安全性控制
    C、并发控制
    D、故障恢复控制

  5. 若事务T对数据R已加X锁,则其它事务对R__________。
    A、可以加S锁不能加X锁
    B、可以加S锁也可以加X锁
    C、不能加S锁可以加X锁
    D、不能加任何锁

  6. 若事务T对数据R已加S锁,则其它事务对R__________。
    A、可以加S锁不能加X锁
    B、可以加S锁也可以加X锁
    C、不能加S锁可以加X锁
    D、不能加任何锁

  7. 若事务T对数据M已加S锁,在不改变S锁的情况下,则其它事务对数据M__________。
    A、可以读,可以写
    B、可以读,但不可以写
    C、不可以读,但可以写
    D、不可以读,不可以写

  8. 下列说法正确的是__________。
    A、正确的并行调度一定是具有可串行性的调度
    B、用于并发控制的两阶段封锁法不会产生死锁现象
    C、两阶段封锁法是可串行化的并行调度算法
    D、一个调度如果是非冲突可串行化的,那么也一定不是可串行化的

    选项 A 的说法是不正确的,可串行化的调度一定是正确的并行调度,反之则不然。选项 B
    的说法是不正确的,两阶段封锁法一定可以产生可串行化的调度,但可能会产生死锁现象。选项 C
    的说法是正确的,两阶段封锁法一定可以产生可串行化的调度。选项 D
    的说法是不正确的,可串行化的调度可以是“非冲突可串行化”的,冲突可串行化比可串行化要严格。

  9. T1,T2是两个事务。图(a)(b)©给出这两个事务的三种调度,这三种调度会出现什么问题呢,正确的选项是_____________。
    A、图(a)的调度会出现“丢失修改”,图(b)的调度会出现“重复读错误”,图©的调度会出现“脏读”。
    B、图(a)的调度会出现“脏读”,图(b)的调度会出现“重复读错误”,图©的调度会出现“丢失修改”。
    C、图(a)的调度会出现“重复读错误”,图(b)的调度会出现“脏读”,图©的调度会出现“丢失修改”。
    D、图(a)的调度会出现“丢失修改”,图(b)的调度会出现“脏读”,图©的调度会出现“重复读错误”。
    在这里插入图片描述

  10. T1,T2是两个事务,图(a)(b)给出这两个事务的两种调度S1,S2,关于S1,S2,说法正确的选项是_____________。
    A、S1是可串行化调度,S2是可串行化调度
    B、S1是可串行化调度,S2是不可串行化调度
    C、S1是不可串行化调度,S2是可串行化调度
    D、S1是不可串行化调度,S2是不可串行化调度

在这里插入图片描述

  1. 试述事务的概念及事务的4个特性。恢复技术能保证事务的哪些特性?

    • 事务是用户定义的一个数据库操作序列,这些操作要么全做、要么全不做,是一个不可分割的工作单位。

    • 事务具有4个特性:原子性,一致性,隔离性和持续性。这4个特性也简称为ACID特性。

      1. 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。
      2. 一致性:事务执行的结果必须使数据库从一个一致性状态变到另一个一致性状态。
      3. 隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
      4. 持续性:持续性也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。
    • 故障恢复可以保证事务的原子性与持续性。

  2. 试述事务的概念及事务的4个特性。恢复技术能保证事务的哪些特性?
    把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。

    如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次UNDO操作,并不会影响数据库的正确性。所以一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改。

  3. 什么是检查点记录?检查点记录包括哪些内容?
    在这里插入图片描述
    14. 今有三个事务的一个调度r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A),该调度是冲突可行串行化的调度吗?为什么?
    是冲突可串行化的调度。

    Sc1=r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A),交换r1(A)和W3(B),得到r3(B)w3(B)r1(A)r2(B)r2(A)w2(B)r1(B)W1(A);再交换r1(A)和r2(B)r2(A)w2(B),得到Sc2=r3(B)W3(B)r2(B)r2(A)w2(B)r1(A)r1(B)w1(A)。由于Sc2是串行的,而且两次交换都是基于不冲突操作的,所以Sc1=r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A)是冲突可串行化的调度。

  4. 考虑T1和T2两个事务。
    T1:R(A);R(B);B=A+B;W(B); T2:R(B);R(A);A=A+B;W(A)
    ① 改写T1和T2,增加加锁操作和解锁操作,遵循两阶段封锁协议。
    ② 说明T1和T2的执行是否会引起死锁,给出T1和T2的一个调度说明之。

在这里插入图片描述


http://www.ppmy.cn/news/107098.html

相关文章

【学习笔记】Unity基础(七)【uGUI基础、利用render Texture实现小地图功能】

目录 一 Canvas1.1 三种Render Space渲染空间 screen1.2 canvas scaler画布缩放器1.3sprite1.4 sprite packer1.5 unity目录1.6 RuleTile Tilemap1.7 sprite packer1.8 sorting layer 二 rect transform2.1 pivot 中轴 中心点2.2 anchor 锚点2.3 uGUI源代码 三 EventSystem3.1 …

相机的畸变矫正与opencv代码说明

相机的畸变矫正与opencv代码说明 简介鱼眼模型的畸变校正针孔模型的畸变校正 简介 图像算法中会经常用到摄像机的畸变校正,有必要总结分析OpenCV中畸变校正方法,其中包括普通针孔相机模型和鱼眼相机模型fisheye两种畸变校正方法。普通相机模型畸变校正函…

为什么国外资深的软件测试多是手动测试,但在国内,都推崇自动化测试?

将自动化测试当成很了不起的资本,源于国内对Coding的崇拜 譬如一个Dev跟一个QA放在一起,大家的第一直观印象就是——前者的技术能力比较强 实际上,这个问题分两面看: 1.自动化测试能力是不是资本? 当然是。 测试自…

Python五彩气球

文章目录 前言Turtle基础1.1 Turtle画板1.2 Turtle画笔1.3 Turtle画图1.4 Turtle填色1.5 Turtle写字 五彩气球气球类漂浮函数气球函数六一祝福 尾声 前言 六一要来啦,快来领取博主精心准备的五彩气球吧! Turtle基础 小海龟(Turtle)是Python中画图的一…

【paddlecls】多机多卡-linux

1. 安装docker(引擎): (https://docs.docker.com/engine/install/ubuntu/) Install Docker Engine on Ubuntu To get started with Docker Engine on Ubuntu, make sure you meet the prerequisites, and then follo…

内置数据类型

Oracle内置数据类型 一.Varchar(size)和NVarchar(size)变长数据类型 size:最多可容纳的字符数。默认值和最小值都是1,最大值为400字符。size必须定义。 二.Char(size)和NChar&…

Ubantu docker学习笔记(十一)k8s基本操作

文章目录 一、K8s介绍二、容器编排2.1 部署应用2.2 了解应用2.3 公开暴露应用2.4 扩缩应用2.4 滚动更新 三、Kubernetes 对象 相信大家在前面的安装过程中,我们的k8s已经完成了一个超级具体的安装【是不是还是有点难度】,今天我们就在前面已经安装好的基…

【OneNet】| stm32+esp8266-01s—— OneNet初体验 | 平台注册及设备创建 | demo使用

系列文章目录 失败了也挺可爱,成功了就超帅。 文章目录 前言1. OneNet平台注册2. 创建多协议接入设备3. 硬件连接4. 下载并运行Demo4.1 Demo下载4.2 运行Demo本小节结束 前言 最近准备耍下 Onenet平台 。下载了官方demo 遇到几个问题 1、创建接入设备 因为平台网页…