【数据库】sql server 2012数据库基础-数据恢复-实验报告

    这是大三第一学期《数据库基础》的实验报告,总共15个实验,前12个百度文库都有,后面三个网上找不到都是我自己花了很多时间琢磨出来的,希望对大家,以及将来的我有所帮助!

实验13 用户管理及权限管理  点我查看

实验14 并发控制   点我查看

实验15 数据恢复   本文

课程名称   数据库基础            

实验项目   实验15 数据恢复       

 

1.实验目的:

理解和体会数据库事务管理的内容,掌握数据库备份和恢复的基本方法,加强对数据库管理系统的事务管理功能的认识。

 

2.实验内容:

在SQL Server环境下实验事务管理的基本内容;掌握数据库备份和恢复的基本方法。

 

3实验要求:

(1)软故障后的恢复。

     参照例题中的程序设计事务及事务处理的程序;

     模拟软故障的情形,使设计的事务及事务处理程序的各个分支都可以执行到;

     体会事务的原子性和一致性。

扫描二维码关注公众号,回复: 8817670 查看本文章

(2)硬故障后的恢复。

     针对一个具体的数据库设计一个备份恢复策略;

     做数据库全备份和若干增量备份(每次备份后都有一些数据操作);

     模拟一个硬故障(假设数据库损坏);

     备份当前日志;

     恢复数据库。

(3)在实验报告中要给出具体的操作步骤和过程,并针对各种情况做出具体的分析和讨论。

4.实验准备:

相关命令:

备份数据库的命令是:

 BACKUP DATABSE database_name TO <backup_device>

[WITH DIFFERENTIAL]

备份日志的命令是

 BACKUP LOG databse_name FROM <backup_device>

WITH {RECOVERY | NORECOVERY}

利用日志进行恢复的命令是:

RESTORE LOG database_name FROM <backup_device>

WITH {RECOVERY | NORECOVERY}

 

5.实验过程(含代码、实验过程、遇到的问题和解决方法等):

 

首先是概念问题。数据库恢复是建立在数据库故障之上的。数据库故障分为软故障和硬故障,软故障指的是突然停电、应用程序被强制结束的情况下,数据库的数据丢失或者损坏。硬故障指的是保存数据库的物理介质坏了,造成数据的遗失或者无法读取。

总体思路:

第一题:然而机房的电脑自带重启还原,无法实现断电重启的条件,我让一个事务(若干修改指令中间加了一个等待指令,以便我使用任务管理器强制关闭sql server),因为事务的原子性,虽然等待指令前的修改指令已经被执行,但是因为事务未完全执行完毕,所以被还原恢复。

第二题:题目给出了条件是“假设数据库损坏”,我先把数据库完整备份,然后把数据库脱机,最后把数据库恢复。

代码截图:

第一题:软故障后的恢复

图 1 首先看到原始的 学时 数据为6

图 2  设计一个事务 内有若干更新操作 中间加一个等待期

图 3   在等待期内 使用任务管理器 强制结束

 

 

图 4   再次登入数据库  查看学时数据  还是为6,说明事务完全没有执行

 

第二题:硬故障后的恢复

图 5  首先对‘学生管理系统‘进行完整备份

图 6 然后模拟 硬故障 删除该数据库

 

图 7  接着还原数据库 覆盖还原

图 8   接着打开还原的数据库 发现数据和原先一致

 

6.实验总结:

这个实验是对数据库进行备份和还原,当数据库因为各种原因被损坏或者无法读取的时候,会造成无法估量的后果,这个时候就需要数据库还原工具,进行还原。

数据库故障分为“软故障”和“硬故障”两种,“软故障”是因为断电导致软件方面的故障,“硬故障”是因为物理硬件坏了,导致数据库破损。相当于电脑的操作系统故障和物理设备的故障。

数据库恢复分为完全备份和增量备份,完整备份效果最好,但是比较消耗时间;增量的备份保存的是对数据库的操作,在完整备份的基础上,使用增量备份也可以达到还原要求,但是增量备份时间消耗比较少,所以在选择数据库还原策略的时候,因为根据实际情况选择完全备份和增量备份。

发布了42 篇原创文章 · 获赞 26 · 访问量 9581

猜你喜欢

转载自blog.csdn.net/qq_41464123/article/details/104064909