SQL2000Master及数据库文件恢复方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

实验人员:李政(长沙实力S2T15班)

实验目标:恢复SQL2000Master数据库及用户数据库并示例追加的备份恢复操作;

实验思路:先重建Master→再恢复Master完全备份;

实验注意:数据库的备份;

实验环境:此为一新建SQL服务器,拟将master数据库删除,然后通过备份将其恢复到损坏前;

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

实验步骤:

一、数据库出现故障前

当有数据库更改等操作后,一定要注意进行备份,这样才能在数据库出现错误时将损失降到最低;

数据库的备份

新建备份设备master-full,路径为c:\sql txt\master.bak(生产环境中不应将其放于SQL服务器同一磁盘中);

备份master数据库(也可在建立用户数据库后再进行备份,此处拟进行备份追加后的恢复示例);

在此处中选择   后选择设备master-full(备份到文件更不容易出现恢复时的错误),进行数据库的完全备份;

新建数据a,并再次备份master数据库(此处使用追加到媒体);

二、数据库出现错误后

(一)、删除数据库

(此一步骤为模拟出现错误的情况,故障出现后从后面的“(二)”开始)

停止SQL服务器并删除master数据库主文件master.mdf

(二)、第一次备份的恢复

本文示例恢复所做的两次备份操作及效果有何不同

master数据库;

重建master数据库后,服务器已经可以启动了,但此时的服务器中用户数据库全部丢失,所以在重建后不应马上启动数据库,保持数据库处于停止状态,先恢复开始所做的备份;

通过命令使数据库启动到单用户连接模式;

运行下面的命令:

不要关闭命令执行后的窗口,如下:

使用“查询分析器”连接服务器;

选择“否”;

执行Restore Database语句来恢复所做的master备份。其格式为:

Restore Database DataBaseName From Disk=’Path’ With Recovery

说明:DataBaseName—要恢复的数据库名;

Path—备份文件所在路径;

本例为:

Restore Database Master From Disk=’c:\sql txt\master.bak’ With Recovery

启动数据库;

这时就可以看到已经恢复了第一次进行Master数据库后的数据库,但在此之后所建数据库未被恢复;

(三)、第二备份的恢复;

下面将恢复第二次所做的备份

将数据库停止;

2、通过命令使数据库启动到单用户连接模式;

运行下面的命令:

一样的不要关闭命令执行后的窗口;

3、通过“查询分析器”连接服务器;

4、执行Restore Database语句来恢复所做的master备份。其格式为:

Restore Database DataBaseName From Disk=’Path’ With Recovery,Rile= Number

说明:DataBaseName—要恢复的数据库名;

Path—备份文件所在路径;

Number—要恢复的第几次备份;

本例为:

Restore Database Master From Disk=’c:\sql txt\master.bak’ With Recovery,File=2

5、启动数据库并验证;

从下面的图中就可以看出已经恢复了用户数据库;

 

 

实验总结:通过本次实验可以看出在生产中,数据库的备份非常重要,有一个好的习惯对工作非常有益。