数据库系统概论(第五版)概念大全 —— 第十章与第十一章

第十章 数据库恢复技术

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

2、事务的ACID特性:原子性、一致性、隔离性、持续性

原子性:事务中包括的诸操作要么都做,要么都不做

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

隔离性:一个事务的执行不被其他事物干扰

持续性:也为永久性,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

3、故障种类与数据恢复方法(此处简写了,详尽请看书P300):

1)事务内部故障:某个事务在运行过程中由于种种原因未运行至正常终止点

恢复:事务撤销

2)系统故障:由于某种原因造成整个系统的正常运行突然停止,致使所有正在运行的事务都以非正常方式终止

恢复:消除尚未完成的事务对数据库的所有修改;将已完成事务提交的结果写入数据库

3)介质故障:硬故障,使存储在外存中的数据部分丢失或全部丢失

恢复:装入数据库发生介质故障前某个时刻的数据副本重做自此时始的所有成功事务,将这些事务已提交的结果重新记入数据库

4)计算机病毒:人为的故障或破坏,是一种计算机程序。

恢复:杀毒软件。

4、当数据库被破坏后,如果事先保存了数据库副本日志文件,就有可能恢复数据库。

5、日志文件:用来记录事务对数据库的更新操作的文件

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

7、登记日志文件遵循规则:

1)登记的次序严格按并发事务执行的时间次序

2)必须先写日志文件,后写数据库

第十一章 并发控制

1、事务是并发控制的基本单位。

2、并发操作带来的问题:丢失修改、不可重复读、读“脏”数据

3、丢失修改:两个事务T1和T2读入同以数据并修改,T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失。

4、不可重复读:事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。

1)事务T1读取某一数据后,T2对其进行修改,当T1再次读取该数据时,得到的值与前一次不同。

2)T1按一定条件从数据库中读取某些数据记录后,T2删除了其中部分记录,T1再次按相同条件读取数据时,发现某些记录神秘消失。

3)T1按一定条件从数据库中读取某些数据记录后,T2插入了一些记录,当T1再次按相同条件读取数据时,发现多了一些记录。

5、读“脏”数据:T1修改某一数据并将其写会磁盘,T2读取同一数据后,T1由于某种原因被撤销,这时T1被修改过得数据恢复原值,T2读到的数据与数据库中的数据不一致。

6、并发控制的重要技术:封锁

7、封锁类型:排它锁(写锁)X(只允许T读取和修改A,其他任何事务都不能对A加任何类型的锁,直到T释放A上的锁)、共享锁(读锁)S(T可以读但不能修改A,其他事务只能再对A加S锁,不能加X锁)。

8、一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。(保证数据不丢失修改

9、二级封锁协议:在一级封锁协议的基础上增加T在读取数据R之前必须先对其加S锁,读完后即可释放S锁。(保证数据不丢失修改以及防止读“脏”数据

10、三级封锁协议:在一级封锁基础上增加T在读取数据R之前必须先对其加S锁,知道事务结束才释放。(三个都防止

11、活锁:如果事务T1封锁数据R,事务T2请求封锁R,T2等待;T3也请求封锁R,当T1释放R上的封锁后首先批准T3请求,T2仍然等待...T2有可能永远等待。

12、死锁:T1在等待T2,T2在等待T1,T1,T2两个事务永远不能结束。

13、可串行化调度:多个事务并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同。

14、可串行性是并发事务正确调度的准则。

15、冲突:不同事务对同一个数据的读写操作和写写操作

16、两段封锁:第一阶段为获得封锁(扩展阶段),第二阶段为释放封锁(收缩阶段)。

你可能感兴趣的:(《数据库系统概论》章节概念大全,数据库,database,dba)