《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章

上传人:洪易 文档编号:56903401 上传时间:2018-10-17 格式:PPT 页数:130 大小:1.02MB
返回 下载 相关 举报
《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章_第1页
第1页 / 共130页
《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章_第2页
第2页 / 共130页
《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章_第3页
第3页 / 共130页
《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章_第4页
第4页 / 共130页
《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章_第5页
第5页 / 共130页
点击查看更多>>
资源描述

《《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章》由会员分享,可在线阅读,更多相关《《数据库原理及应用-(SQLServer2008版)》 唐国良蔡中民-第13章(130页珍藏版)》请在金锄头文库上搜索。

1、第13章 SQL Server 2008数据库的高级管理,本章的学习目标:,理解数据库备份的概念、备份类型和恢复类型。,掌握SQL Server数据库的各种类型的备份和恢复的方法。,理解数据库分离和附加的原因及含义。,掌握SQL Server进行分离和附加操作的方法。,理解数据库快照的含义及作用。,掌握数据库快照的创建及使用方法。,13.1 备份和恢复数据库,13.1.1 备份和恢复基本概念,数据库备份就是为了最大限度地降低灾难性数据丢失的风险,从数据库中定期保存用户对数据所做的修改,用以将数据库从错误状态下恢复到某一正确状态的副本。需要备份的数据库包括系统数据库和用户数据库,备份的内容包括数

2、据文件和日志文件两部分,由规定的拥有备份权限的数据库用户进行备份,备份到特定的位置上(在SQL Server中可以备份到两种介质上:硬盘或磁带)。备份操作可以在SQL Server 2008数据库正常运行时进行。,13.1.2 备份类型,SQL Server 2008数据库提供了以下多种备份类型,如表13-1所示。,表13-1 SQL Server 2008数据库的备份类型,下面主要介绍完整备份、差异备份、事务日志备份和文件及文件组备份这四种备份类型。,1完整备份,备份整个数据库或者一组特定的文件组或文件中的所有内容,包括事务日志。完整备份是在某一时间点做数据库的备份,这一备份作为数据库恢复时

3、的基线。使用这种方法进行定期备份,当系统出现故障时,可以恢复到最近一次数据库备份时的状态,但在该次备份后到数据库发生故障期间的事务都将丢失。,2.差异备份,差异备份是完整备份的补充,只备份上次完整备份后发生更改的数据,因此需要先进行完整备份后才能进行此种备份。差异备份比完整备份的工作量小,备份速度快,对系统的影响也小,可以经常使用。当用户在备份一个频繁修改的数据库时,为了减少备份时间和恢复时间,应使用差异备份。,但是这种备份在恢复时需要先恢复最近一次的完整备份,然后才能恢复最后一次所做的差异备份。,3事务日志备份,事务日志备份只备份事务日志里的内容,即记录所有数据库的变化。与差异备份相同,如果

4、没有执行一次完整数据库备份,不能进行事务日志的备份。事务日志备份的空间占用小、备份时间快,当系统发生故障时,能够恢复所有备份的事务,丢失未提交或未执行完的事务。,事务日志备份在执行恢复时也需要先恢复最近一次的完整备份,然后才能恢复最后一次所做的事务日志。,注释:事务日志的活动部分开始于最早打开事务的时间点,持续到事务日志的结束。,4文件及文件组备份,对于非常庞大的数据库,有时执行完整备份并不可行,这时用户可以执行数据库的文件或文件组备份。因为大型的数据库通常都含有多个数据库文件或文件组,因此可以分开进行备份从而减少备份的工作量。,进行文件及文件组备份时通常还要定期备份事务日志,这样在恢复时可以

5、只还原已损坏的文件,而不用还原数据库的其他部分,加快恢复速度。,注意:当用户执行文件及文件组备份时,必须使用逻辑文件或者文件组。必须执行事务日志备份,以确保备份文件各数据库的其他部分一致可用。一般情况下,使用文件和文件组备份,要求用户对备份体系的整体进行考虑。,13.1.3 恢复模式,事务日志是用来记录数据库中的每一次数据变动的,那么是否每次变动都有记录的必要呢?其实不然,如果记录的太频繁反而会降低数据库的性能,因此需要对事务日志的记录方式进行设置,而恢复模式就是用来设置事务日志的操作方法的。它控制如何记录事务,事务日志是否需要(以及允许)备份,以及可以使用哪些类型的还原操作。它可以理解为SQ

6、L Server 2008数据库备份和恢复的方案,它约定了备份和恢复之间的关系。SQL Server 2008提供了三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。通常,数据库使用完整恢复模式或简单恢复模式。数据库可以随时切换为其他恢复模式。,1简单恢复模式,在该种恢复模式下数据库不进行日志备份,这样可以节约事务日志空间及管理开销。但是这种模式存在风险,一旦数据库发生损坏,只能恢复到最新的备份点状态,在该备份以后发生的更改将会丢失。因此,在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据,也可以加入差异备份用来减少备份的开销。,2.完整恢复模式,在这种恢复模式下将完整地记录

7、所有事务,并将事务日志记录保留到对其备份完毕为止。如果能够在出现故障后备份日志尾部,则可以使用完整恢复模式将数据库恢复到故障点。完整恢复模式还支持还原单个数据页。,3. 大容量日志,大容量日志恢复模式记录了大多数大容量操作,它只用作完整恢复模式的附加模式。该模式与完整恢复模式相同,也将事务日志记录保留到对其备份完毕为止。可以通过使用最小方式记录大多数大容量操作,从而减少日志空间使用量。对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复模式。但是大容量日志恢复模式不支持时点恢复,因此必须在增大日志备份与增加工作丢失风险之间进行权衡。,表13-2 各种恢复模式所支持的恢复

8、操作,13.1.4 备份的策略,备份策略是指根据用户数据库的自身特点,制定的符合数据库要求的备份类型。例如对一般的事务性数据库,使用“完整备份”加“差异备份”相结合的方法等。,1完全数据库备份策略,对于数据库数据量小,且数据变化少或数据库是只读类型的小型数据库来说,可以使用这种备份策略,即只对数据库进行定期 “完整备份”。,该策略中的恢复模式可以使用“简单恢复模式”用来简化操作。因为如果使用“完整恢复模式”还要定期清除事务日志,否则当事务日志变满时,SQL Server 2008可能阻止数据库活动。,2数据库和事务日志备份策略,对于经常进行修改操作的数据库来说,要求较严格的可恢复性,而由于时间

9、和效率的原因,仅通过使用数据库的完整备份实现这样可恢复性并不可行时,可以考虑使用这种备份策略。即在“数据库完整备份”的基础上,增加“事务日志备份”,以记录全部数据库的活动。用户应备份从最近的“数据库完整备份”开始,使用“事务日志备份”。,该策略中的恢复模式应使用“完整恢复模式”。,3差异备份策略,对于数据库变化比较频繁、要求备份时间尽可能短的数据库来说,可以使用这种备份策略。差异备份策略包括执行常规的数据库“完整备份”加“差异备份”,并且可以在“完整备份”和“差异备份”中间执行“事务日志备份”。,恢复数据库时,应首先恢复数据库的“完整备份”,其次是恢复最新一次的“差异备份”,最后恢复最新一次“

10、差异备份”以后的每一个“事务日志备份”。该策略在日常工作中被大量使用。,4文件或文件组备份策略,对于数据库非常庞大,完整备份耗时太长的情况来说,可以使用这种备份策略。文件或文件组备份策略主要包含备份单个文件或文件组的操作。通常这类策略用于备份读写文件组。备份文件和文件组期间,通常要备份事务日志,以保证数据库的可用性。这种策略虽然灵活,但是管理起来比较复杂,SQL Server 2008不能自动地维护文件关系的完整性。,13.1.5 执行数据库备份,执行数据库备份首先要创建备份设备。备份设备就是用来存储备份数据的存储介质,可以是磁盘、磁带等。备份设备又分为逻辑备份设备和物理备份设备两种。创建好备

11、份设备后,就可以进行数据库的备份了,我们可以使用SQL Server Management Studio中的对象资源管理器和T-SQL语句两种方法进行备份。下面介绍备份数据库的方法。,1创建备份设备,备份设备的名称分为物理名称和逻辑名称,物理名称是操作系统用来访问物理设备时所使用的名称,例如完整路径的操作系统文件名(D:datadata_full.bak);逻辑名称是为物理备份设备指定的逻辑别名。使用逻辑名访问比物理设备更加方便,但是要想使用备份设备的逻辑名称进行备份,就必须先创建备份设备并起好名称;否则就只能用物理名访问备份设备。,创建逻辑备份设备,逻辑备份设备所创建的备份可以用作重用备份,

12、也可以用来设置系统自动备份。创建过程如下:,(1)启动【SQL Server Management Studio】,连接到本地默认实例,在【对象资源管理器】窗口中,展开【服务器对象】节点,右击【备份设备】,在弹出的快捷菜单中选择【新建备份设备】选项。,(2)打开【备份设备】对话框,如图13-1所示,在【设备名称】后面输入备份设备的名称,在【目标】后的文件中输入完整的路径名(这里只介绍磁盘的备份)。单击【确定】按钮,完成备份设备的创建。,当然我们也可以使用系统存储过程sp_addumpdevice来创建备份设备。具体格式为:,sp_addumpdevicedevtype=device_type,

13、logicalname=logical_name,physicalname=physical_name,参数说明:,device_type:备份设备的介质类型,可以是“DISK”硬盘文件或“TAPE”磁带设备。,logical_name:备份设备的逻辑名称。,physical_name:备份设备的物理名称。,图13- 1 新建设备备份对话框,【例13-1】在本地硬盘的D盘根目录下创建一个备份设备。,USE master,GO,EXEC sp_addumpdevice disk,mybackup,D:mybackup.bak,创建物理备份设备,物理备份设备是用来临时存储使用的,这种设备只能使用物

14、理名称来引用。在创建物理备份设备时,需要指定备份设备的介质类型和完整路径及文件名,使用T_SQL语句中的BACKUP DATABASE语句创建,具体备份方法在后面介绍。,2利用对象资源管理器创建备份,下面以完整备份stu_info数据库为例,介绍使用SQL Server Management Studio工具来完成的完整备份的方法,具体操作过程如下。,(1)启动【SQL Server Management Studio】,连接到本地默认实例,在【对象资源管理器】窗口中,展开【数据库】节点,右击【stu_info】数据库,在弹出的快捷菜单中选择【任务】【备份】选项,如图13-2所示。,(2)打开

15、【备份数据库】对话框,默认选择【常规】选项,如图13-3所示。,图13- 2 选择备份命令,图13- 3 备份数据库对话框,(3)在【源】选项框中的【数据库】复选框中,选择【stu_info】数据库。在【备份类型】复选框中,选择【完整】类型。在【备份组件】选项框中,选择【数据库】单选按钮。,(4)在【备份集】选项框中,可以为该备份集指定一个名称,并添加一些有实际意义的说明,还可以指定【备份集过期时间】选项,起到说明的作用。在【目标】列表框中,指定要备份到的设备,包括【磁盘】和【磁带】两种设备。如果选择【磁盘】单选按钮,那么可以指定要备份到的文件位置,可以是物理设备,也可以是逻辑设备。可以通过单

16、击【添加】按钮,将一个数据库备份到多个文件。,(5)单击【确定】按钮,得到stu _info数据库的一个完整备份,如图13-4所示。,图13- 4 备份成功,注意:在进行数据库的备份时,将磁盘上的文件当作备份设备来处理。在备份时,可以向这个设备添加多份备份内容。在默认情况下,再次备份的结果不会有冲突,也不会覆盖。如果希望再次备份时,直接将以前的备份结果覆盖。可以在备份时,切换到“备份数据库“对话框的“选项“选项,选择“覆盖所有现有备份集“单选按钮,如图13-5所示。,图13- 5 备份选项命令,3利用T-SQL语句创建备份,使用BACKUP命令,可以创建备份,包括完整备份、差异备份、日志备份以及文件和文件组备份等。,(1)备份完整数据库,其语法格式为:,BACKUP DATABASE database_name | database_name_var ,TO ,.n , MIRROR TO ,.n next-mirror-to , WITH ,.n ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号