职业教育新东方网 > 职业教育 > 计算机 > 等级考试 > 综合辅导 > 计算机四级 > 文章正文

2011年计算机等级考试四级数据库技术复习笔记(11)

分享到:

2011-09-24 17:49  作者:  来源:web  字号:T|T

  第11章 故障管理

  11.1 事务

  1、事务是数据库的逻辑控制单位,是操作数据的一个程序执行单元。

  2、为了保证数据的完整性,要求数据库系统维护事务具有如下性质:

  (1) 原子性:事务是一个不可分割的工作单位,事务中的操作要么都做,要么都不做;

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

  (3) 隔离性:一个事务内部的操作及使用的数据对于其他并发事务是隔离的;

  (4) 持续性:一个事务提交后,它对数据库中数据的改变是永久性的,即使系统可能出现故障,也不会对其它执行的结果有任何影响。

  11.2 故障的种类及解决方法

  11.2.1 事务内部故障

  1、预期的事务内部故障:

  通过事务程序本身发现的事物内部故障,可以通过将事务回滚,撤销其对数据库的修改,从而使数据库回到一致性的状态;

  2、非预期的事务内部故障:

  (1)由于事务内部故障大部分属于此类,所以事务故障仅限指此类故障;

  (2)事务故障表明事务没有提交或撤销就结束了,因此数据库可能处于不正确的状态,因此,恢复事务必须强行回滚事务,在保证该事务对其他事务没有影响的条件下,利用日志文件撤销其对数据库的修改,使数据库恢复到该事务运行之前的效果;

  (3)事务故障恢复是由系统自动完成的,对用户是透明的。

  11.2.2 系统故障(软故障)

  1、指数据库在运行过程中,由于硬件故障、数据库软件及操作系统的漏洞、突然停电等情况,导致系统停止运转,所有正在运行的事务以非正常方式终止,需要系统重新启动的一类故障;

  2、系统故障导致内存中的内容丢失,而在硬盘上的内容仍然完好;从而导致数据库的数据可以处于不正确的状态;

  3、要消除这些事务对数据库的影响,保证数据库中数据的一致性,办法就是在计算机系统重新启动后,对于未完成的事务可能已经写入数据库的内容,回滚所有未完成的事务写的结果,以保证数据库中数据的一致性;对于已完成的事务可能部分或全部留在缓存区的结果,需要重做所有已提交的事务,以将数据库真正恢复到一致状态。

  4、一句话,当数据库发生系统故障时,容错对策是在重新启动系统后,撤销(UNDO)所有未提交的事务,重做(REDO)所有已提交的事务。

热点课讯

精彩问答

提问