数据库_数据库恢复技术

1.没错 ,又到了数据库的考试,我需要总结一下数据库的知识了。

2.首先是数据库的恢复技术。这里面有一个很重要的东西,也是关系型数据库与其他数据库重大的区别所在。

(1)事务:事务通俗的来讲就是用户定义的一系列操作,但是这些操作有着十分明显的特点,就是十分的团结。说的其实这些操作是一个整体,要么全做要么全部不做。再SQL中定义事务的语句一般有3条:
                                         

                            BEGIN  TRANSACTION
                            COMMIT
                            ROLLBACK

一个事务通常都是以BEGIN TRANSACTION开始,结果有两种,要么成功的COMMIT要么就是失败ROLLBACK。其中COMMIT就是提交,也就是说更新数据,而ROLLBACK恰恰相反,它表示事务再执行的过程中可能遇到了某种故障,无法继续执行,所以回滚,撤销之前的所有的数据的操纵。

(2)事务的特点:ACID四大特性。

A(Atomicity)原子性:说的就是事务是一个整体,要么全做要么全部不做。

C(Consistency)一致性:说的就是操作的数据前后要保持一致,比如经典的银行转账的例子:A转B1W,那么A账户减少1W,B增加1W二者的总和不变。这就是一致性的含义。

I(Isolation)隔离性一个事务不被其他事务干扰,也就是说当前的事务操作数据时,其他事务不能够修改这些数据。这个我们后边再说,关于事务的并发控制,是一个很重要的话题。

D(Durability)持续性,事务提交之后,他对数据库中的数据的改变就是永久的。

3.事务的这四大特征十分的重要。事务时数据恢复和并发控制的基本单位。但是事务的者四个特性不一定每次执行都可以得到保持一般来说破坏事务的ACID特性的有两个大的方面:

(1)多个事务并行运行,不同的事务交叉运行

(2)事务运行过程中被强制的停止。

4.数据库故障的种类

(1)事务内部故障:事务内部故障其实就是我们刚才说的,事务没有到达预期的预期的终点,中间就中断了执行,那么事务执行回滚的操作,撤销刚才执行的效果。

(2)系统故障:指的就是任何造成系统停止运转的事件,使得系统需要重新启动。这个时候,丢失数据最严重的是在缓存区,发生这类事件的时候,需要再系统重新启动的时候实现对事务的强行回滚。

(3)介质故障:硬件上面的故障,这个无法避免,但是发生的概率很小。

(4)计算机病毒。这个应该都听说过一点,就是使用程序恶意的破坏数据库中的内容。

5.数据库的恢复

数据库的恢复有很多实现的方法,一般的通用的是:数据的转储和登记日志文件。

数据转储:其实就是一个备份的意思。DBA定期的将数据复制到其他的磁盘上,分为动态的和静态的。二者的区别就是数据库的状态不同,静态的指的是数据库此时没有数据的修改,动态的相反,这里我们就不在深入这个问题。

日志文件:其实就是事务的记事本。用来记录事务对数据库的更新操作。也是分为两大类:

(1)以记录为单位的日志文件:日志文件需要登记的内容是

          各个事务的开始标记

           各个事务的结束标记

           各个事务的更新操作。

(2)以数据块为单位的日志文件。事务包括事务标识和被修改的数据块。

为了保证数据库是可以恢复的,登记日志文件的时候必须包含两条规则:

(1)登记的次序严格的按照并发事务执行的事件次序

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

那么一旦事务发生故障了,一个通过日志文件恢复的策略就是

(1)反向扫描这个日志文件,查找这个事务的更新

(2)对该事务的更新做一个逆操作。

(3)继续反向的扫描

(4)直到读取到事务的开始标记。

这样一来,数据库就可以再一定程度上得到恢复。这也是事务的一个很大的作用,这里我们先探讨到这里,后边我们继续说事务再并发操作的作用。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值