数据库的备份与恢复

数据库的备份与恢复
数据库的备份与恢复

数据库的备份与恢复

一、实验目的和要求

1、理解备份设备的概念。

2、掌握使用SQL Server2000企业管理器和T_SQL两种方法管理备份设备。

3、掌握使用SQL Server2000企业管理器和T_SQL两种方法进行数据库完全备份。

4、掌握使用SQL Server2000企业管理器和T_SQL两种方法进行数据库还原。

5、掌握SQL Server2000提供的三种封锁机制。

二、实验内容和步骤

㈠数据库恢复

1、数据库的备份

SQL Server2000有数据库完全备份、数据库差异备份、事务日志文件备份、文件及文件组备份等四种形式。在备份一个数据库之前,需要先创建一个备份设备,然后再去复制要备份的数据库、事务日志、或文件/文件组等,而备份设备可以是磁带、磁盘文件或是网络驱动。而磁带必须连接到SQL Server的主机上执行,因为SQL Server不支持远程磁带的驱动。

⑴备份设备管理

①创建备份设备

使用企业管理器:

Step1 :在“管理”→“备份”的项目上,单击鼠标右键选择“新建备份设备”的选项。

Step 2 :系统会打开新的备份设备属性设置页,在“名称”的文本框中输入新的名称。

Step3: 设置名称为“数据库备份”,而在“文件名称”的空格中会自动出现“数据库备份.BAK”的文件名称。

Step 4 :按确定按钮,可以从备份项目内看到刚才创建的“数据库备份”项目。

使用系统存储过程sp_addumpdevice:

sp_addumpdevice{“disk”|”diskette”|”tape”},”logical_name”,

“physical_name”

其中:”disk|”diskette”|”tape”说明转储设备的类型,disk说明用硬盘文件作为转储设备,diskette说明用软盘作为转储设备,tape说明用磁带作为转储设备;

logical_name是由DUMP(转储)和LOAD(恢复)命令使用的转储设备的逻辑名;

physical_name是转储设备的物理名;如:

②查看备份设备的信息

使用企业管理器:

Step1:展开服务器组,再展开服务器。

Step2:展开“管理”,选中“备份”,在右边窗口的备份设备列表中用鼠标右键单击要查看的备份设备,在弹出的快捷菜单中选择“属性”命令。

Step3:打开的属性对话框,如图所示。该对话框中显示了设备的物理文件名。

Step4:单击查看内容[V]…按钮,打开如图所示的对话框,其中列出了该设备上保存的所有备份,以及每个备份的类型、日期、大小等信息。

③删除备份设备

使用企业管理器:

step1:展开服务器组,再展开服务器。

Step2:展开“管理”,选中“备份”,在右边窗口的备份设备列表中用鼠标右键单击要删除的备份设备,在弹出的快捷菜单中选择“删除”命令。

Step3:在确认删除对话框中单击“是”按钮。

Step4:从磁盘上删除了操作系统文件。

利用T_SQL命令:sp_dropdevice ‘备份设备名’

⑵备份数据库:本实验主要介绍数据库完全备份。

①利用SQL Server2000 企业管理器

当完成备份设备的创建后,便可以进行数据库的备份。若没有创建任何备份设备,则打开备份数据库程序时,此时会提醒用户必须先创建备份设备。

Step1:在所创建的“数据库备份”项目上,单击鼠标右键,选择“备份数据库。”

Step2:打开“S QL Server 备份”属性设置页,选择索要备份的数据库"学生选课"。

Step3: 选择完全数据库备份的方式。

Step4: 单击“目的”中的“添加”按钮,进入“选择备份目的”对话框。

Step5: 更改为“备份设备”的方式,选择所创建的“数据库备份”设备。

Step6: 可以在最下面的“调度”项目中,设置备份计划,假设在“调度”前打勾,系统就会有一个默认的备份计划。

Step7: 除了系统默认值外,也可以按右下角的“更改”按钮,去改变备份时间。

Step8: 经过前面步骤,设置基本完成。若选取“调度”的设置,按下“确定”按钮后,则不会马上进行数据备份;若取消打勾后,当按下“确定”按钮后,则马上可以进行备份。

②利用T_SQL命令进行备份,语法是:

BACKUP DATABASE { database_name | @database_name_var }

TO < backup_device > [ ,...n ] [with options]

2、数据库的还原

⑴利用SQL Server2000 企业管理器

Step1: 选择“SQL Server企业管理器”的菜单中“工具”→“还原数据库”的选项。

Step2: 系统打开“还原数据库”的设置项目对话框。

Step3: 选择要还原的数据库,并选择要还原哪一次备份。

Step4: 针对备份记录,在上一步中,可以按下“属性”按钮,查看更详细的备份记录,也可以改变还原的备份设备。

Step5: 下图为选择还原设备,这里选择数据库备份。

Step6: 查看“还原数据库-选项”设置对话框。在此可以看到还原的数据库文件为“Student_Data.MDF”与“Student_Log.LDF”两个文件。必要时选择“在现有的数据库上强制还原”。

Step 7: 在上一步中,按下“确定”按钮后,SQL Server 便开始进行还原数据库的操作。

⑵用T_SQL命令进行还原,语法是:

Restore DATABASE{dbname|@dbname_var}

From backup_device1[,backup_device2[,…,back up_device32]][WITH options]

㈡并发控制

1、SQL Server2000提供了三种封锁机制

为了保证数据的一致性,并且允许最大量的并发用户,SQL Server2000提供了三种封锁机制,即独占封锁、共享封锁和更新封锁。封锁的对象可以是表格、页或者记录。

⑴共享封锁:共享封锁是为读操作设置的一种封锁,目的是为了读到一组不变的数据,也就是在读数据的过程中,不允许其他用户对该数据进行任何修改操作。

⑵更新封锁:当需要对一个记录或一组记录进行更新时 (只是修改,不包括插入和删除)使用更新封锁,该封锁的目的是防止其他用户在同一时刻修改同一记录。已经实施更新封锁的记录,拒绝来自其他用户的更新封锁或独占封锁。

⑶独占封锁:独占封锁也叫排他封锁,这是最严格的一类封锁。当需要对表实施插入、删除或修改操作时,应该使用独占封锁。已经实施独占封锁的表,拒绝来自其他用户的任何封锁,在释放排他锁之前,其他事务既不能修改也不能修改对象。

所有的封锁都将在事务结束(提交或撤消)时自动释放。SQL Server2000 使用SELECT

语句完成封锁操作,在指定选择的表的同时在FROM子句中指定对表所实施的封锁。

2、SQL Server2000的封锁命令

SQL Server2000的封锁操作是在相关语句的“WITH (table_hint)子句中完成的,可用在SELECT、INSERT、UPDATE、DELETE等语句中指定表级锁定的方式和范围。常用的封锁关键词有:

相关主题
相关文档
最新文档