数据库系统中故障可以分为哪几类?

 我来答
鱼小喵的chris
2018-04-04 · TA获得超过1868个赞
知道答主
回答量:39
采纳率:25%
帮助的人:5887
展开全部

可以分为三类:

1.事务故障

2.系统故障

3.介质故障

事务故障:事务故障是由于程序执行错误而引起事务非预期的、异常终止的故障。它发生在单个事务的局部范围内,实际上就是程序的故障。有的事务故障可以通过事务程序本身发现。

系统故障:若系统在运行过程中,由于某种原因,造成系统停止运行,以致事务在执行过程中以非正常的方式终止,这是内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为系统故障。

介质故障:介质故障是指外存储设备故障,主要有磁盘损坏,磁头碰撞盘面,突然的强磁场干扰,数据传输部件出错,磁盘控制器出错等。

有发麴问薇
2019-12-21 · TA获得超过3857个赞
知道小有建树答主
回答量:3083
采纳率:34%
帮助的人:181万
展开全部
事务故障
系统故障
介质故障
一、事务故障
什么是事务故障
某个事务在运行过程中由于种种原因未运行至正常终止点
事务故障的常见原因
输入数据有误
运算溢出
违反了某些完整性限制
某些应用程序出错
并行事务发生死锁
事务故障(续)
事务故障的恢复
事务故障的恢复:事务撤消(UND)
恢复程序要在不影响其它事务运行的情况下,强行回滚(RBACK)该事务,即清除该事务对数据库的所有修改,使得这个事务象根本没有启动过一样
二、系统故障
什么是系统故障
由于某种原因造成整个系统的正常运行突然停止,致使所有正在运行的事务都以非正常方式终止。
发生系统故障时,内存中数据库缓冲区的信息全部丢失,但存储在外部存储设备上的数据未受影响
系统故障(续)
系统故障的常见原因
操作系统或DBMS
代码错误
操作员操作失误
特定类型的硬件错误(如CPU
故障)
突然停电
系统故障(续)
系统故障的恢复
1.
清除尚未完成的事务对数据库的所有修改
如果DBMS
无法确定哪些事务已更新过数据库,则系统重新启动后,恢复程序要强行撤消(UND

所有未完成事务,使这些事务象没有运行过一样。
2.
将已完成事务提交的结果写入数据库
如果DBMS
无法确定哪些事务的提交结果尚未写入物理数据库,则系统重新启动后,恢复程序需要重做(RED

所有已提交的事务。
三、介质故障
什么是介质故障
硬件故障使存储在外存中的数据部分丢失或全部丢失
介质故障比前两类故障的可能性小得多,但破坏性最大。
介质故障(续)
介质故障的常见原因
硬件故障
磁盘损坏
磁头碰撞
操作系统的某种潜在错误
瞬时强磁场干扰
介质故障(续)
介质故障的恢复
装入
数据库发生介质故障前某个时刻的数据副本
重做自此时始的所有成功事务
,将这些事务已提交的结果重新记入数据库
故障的种类小结
数据库系统中各类故障对数据库的影响
数据库本身被破坏
(介质故障)
数据库处于不一致状态
数据库中包含了未完成事务对数据库的修改(事务故障、系统故障)
数据库中丢失了已提交事务对数据库的修改(系统故障)
不同类型的故障应采用不同的恢复操作
故障的种类小结(续)
恢复操作的基本原理:简单
原理:利用
存储在系统其它地方的冗余数据
来重建
数据库中已经被破坏或已经不正确的那部分数据
恢复的实现技术:复杂
一般一个大型数据库产品,恢复子系统的代码要占全部代码的10%
以上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式