数据库系统概论王珊第五版学习笔记(5)

2019-08-31 09:33

在事务故障恢复和系统故障恢复必须用日志文件。

在动态转储方式中必须建立日志文件,后备副本和日志文件结合起来才能有效地恢复数

据库。

在静态转储中也建立日志文件……

8.登记日志文件(对数据库的操作记录)。

登记的次序严格按并发事务执行的时间次序。 必须先写日志文件,后写数据库。

9.事务故障的恢复。

恢复子系统应利用日志文件撤销此事务已对数据库进行的修改,系统自动进行。

10.系统故障恢复。

导致故障原因可能有两个:

1. 未完成事务对数据库的更新可能已写入数据库。

2. 已提交事务对数据库的更新可能还留在缓冲区没来得及写入数据库。

恢复策略是撤销故障发生时未完成的事物,重做已完成的事物。 11.介质故障的恢复。

数据库副本。

第十一章

1.并发操作带来的数据不一致性。并发操作破坏了事务的隔离性。

丢失修改:两个事务同时读入同一数据并修改,T2提交的结构破坏了T1提交的结果,

导致T1的修改被丢失。

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

果。

读脏数据:事务1修改某一数据并将其写回磁盘,事务2读取同一数据后,T1由于某

种原因被撤销,这时被T1修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为脏数据,即不正确的数据。 2.并发控制的主要技术。

封锁、时间戳、乐观控制法、多版本并发控制等。

3. 封锁。

封锁就是事务T对某个数据对象操作之前,先向系统发出请求,对该数据对象进行加锁。

加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他事务不能更新此数据对象。 4.封锁类型。

排他锁(写锁):若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任

何事务都不能再对A加任何类型的锁,直到T释放A上的锁为止。保证了其他事务在T释放A上的锁之前不能再读取和修改A。

共享锁(读锁):若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,

其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁为止。保证了其他事务可以读A,但在T释放S锁之前不能对A做任何修改。 5.封锁协议。

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

可防止丢失修改,保证事务T是可恢复的。

二级封锁协议:在一级封锁协议基础上增加事务T在读取数据R之前必须先对其加S

锁,读完后即可释放S锁。二级封锁协议可以防止丢失修改和读“脏”数据

三级封锁协议:在一级封锁协议的基础上增加事务T在读取数据R之前必须先对其加S

锁,直到事务结束才释放。三级封锁协议可防止丢失修改、读脏数据和不可重复读,容易造成比较多的死锁。 6.活锁和死锁

活锁:有一个事务一直等待无法执行。 死锁:T1等待T2,T2等待T1。 避免活锁:采用先来先服务的策略。 预防死锁的方法:一次封锁法、顺序封锁法 死锁的诊断:超时法、事务等待图法 7.可串行化调度。

多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的

结果相同。

可串行性是并发事务正确调度的准则。一个给定的并发调度,当且仅当它是可串行化的,

才认为是正确调度。 8.两段锁协议。

实现并发调度的可串行性,从而保证调度的正确性。

9.所有事务必须分两个阶段对数据项加锁和解锁。

在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁。 在释放一个封锁之后,事务不在申请和获得任何其他封锁。

指事务分为两个阶段:一、获得封锁,事务可以申请获得任何数据项上的任何类型的锁,不能释放任何锁。二:释放封锁,事务可以释放任何数据项上的任何类型的锁,但是不能再申请任何锁。

事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。

若调度是遵守两段锁协议的,因此一定是一个可串行化调度。反之不然。

应用题

1.授权例题

把对Student表和Course表的全部权限授予用户U2和U3 GRANT ALL PRIVILIGES ON TABLE Student, Course TO U2, U3;

把对表SC的查询权限授予所有用户 GRANT SELECT ON TABLE SC TO PUBLIC

把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户 GRANT INSERT ON TABLE SC TO U5

WITH GRANT OPTION;


数据库系统概论王珊第五版学习笔记(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:人民警察礼仪1

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: