SQL Server 2008数据库应用技术 教学课件 ppt 作者 张素青 孙杰 第12章

上传人:E**** 文档编号:89401273 上传时间:2019-05-24 格式:PPT 页数:43 大小:1.53MB
返回 下载 相关 举报
SQL Server 2008数据库应用技术 教学课件 ppt 作者  张素青 孙杰 第12章_第1页
第1页 / 共43页
SQL Server 2008数据库应用技术 教学课件 ppt 作者  张素青 孙杰 第12章_第2页
第2页 / 共43页
SQL Server 2008数据库应用技术 教学课件 ppt 作者  张素青 孙杰 第12章_第3页
第3页 / 共43页
SQL Server 2008数据库应用技术 教学课件 ppt 作者  张素青 孙杰 第12章_第4页
第4页 / 共43页
SQL Server 2008数据库应用技术 教学课件 ppt 作者  张素青 孙杰 第12章_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《SQL Server 2008数据库应用技术 教学课件 ppt 作者 张素青 孙杰 第12章》由会员分享,可在线阅读,更多相关《SQL Server 2008数据库应用技术 教学课件 ppt 作者 张素青 孙杰 第12章(43页珍藏版)》请在金锄头文库上搜索。

1、第12章 数据库的备份和恢复,本章目标,熟悉如何制定备份策略 掌握使用SQL Server Management Studio备份和恢复数据库的方法 掌握使有T-SQL语句备份和恢复数据库的方法,本章内容,12.1 备份与恢复的基本概念 12.2 备份数据库 12.3 恢复数据库 12.4 建立自动备份的维护计划,12.1 备份与恢复的基本概念,备份就是制作数据库结构和数据的拷贝,以便在数据库遭到破坏时能够修复数据库。对于计算机用户来说,对一些重要文件、资料定期进行备份是一种良好的习惯。如果出现突发情况,比如系统崩溃、系统遭受病毒攻击等,使得原先的文件遭到破坏甚至于全部丢失,启动备份文件进行数

2、据恢复,就可以节省大量的时间和精力。,12.1.1备份策略的制定,数据库备份就是创建完整数据库的副本,并将所有的数据项都复制到备份集,以便在数据库遭到破坏时能够恢复数据库。为了保证数据的安全,数据库管理员应定期对数据进行备份。关于备份需要遵循两个简单规则: 尽早并且经常备份; 不要只备份到相同磁盘的一个文件中,应该在完全分离的位置还有一个副本,以确保备份安全。,在SQL Server系统中,只有获得许可的角色才可以备份数据,分别是以下几种: 固定的服务器角色sysadmin(系统管理员); 固定的数据库角色db_owner(数据库所有者); 固定的数据库角色db_backupoperator(

3、允许进行数据库备份的用户)。 当然,管理员也可以授权某些用户来执行备份工作。,设计备份策略的指导思想是:以最小的代价恢复数据库。备份和恢复是相互联系的,因此备份的策略与恢复应结合起来考虑。 如何针对不同的需求设计出最佳的备份策略?首先要考虑的是数据库使用何种恢复模式。SQL Server提供三种数据库恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。 通常,数据库使用完整恢复模式或简单恢复模式。一般来说如果是测试或者是小型正式用数据库则会使用简单恢复模式,而完整恢复模式则应用于大中型正式数据库,当然也可以选择使用大容量日志恢复模式作为互补。制定最佳的数据库备份策略还要考虑到数据库的数据

4、恢复目标要求,数据的使用方式,是否对事务日志进行管理等。,12.1.2 备份与恢复的方式,1.备份类型 (1)完整数据库备份 完整数据库备份就是备份整个数据库。它备份数据库文件、文件的地址以及事务日志的某些部分(从备份开始时所记录的日志顺序号到备份结束时的日志顺序号)。这是任何备份策略中都要求完成的第一种备份类型,因为其他所有备份类型都依赖于完整备份。换句话说,如果没有执行完整备份,就无法执行差异备份和事务日志备份。 完整数据库备份的主要优点是简单,备份是单一操作,可按一定的时间间隔预先设定,恢复时只需一个步骤就可以完成。若数据库不大,或者数据库中的数据变化很少甚至是只读的,使用完整数据库备份

5、是最佳选择。,(2)差异备份 差异备份并不对整个数据库执行完整的备份,它只是对上次数据库备份后发生更改的部分进行备份,它是用来扩充完整数据库备份或数据库事务日志备份的方法。因为只保存改变内容,所以这种类型的备份速度比较快,对于一个经常修改的数据库,采用差异备份策略可以减少备份和恢复时间。 (3)事务日志备份 事务日志备份是所有数据库修改的系列记录,用来在恢复操作期间提交完成的事务以及回滚未完成的事务。这种方法不需很频繁地定期进行数据库备份,而是在两次完整数据库备份期间,进行事务日志备份,所备份的事务日志记录了两次数据库备份之间所有的数据库活动记录。,(4)数据库文件或文件组备份 SQL Ser

6、ver 2008可以备份数据库文件和文件组而不是备份整个数据库。如果正在处理大型数据库,并且希望只备份文件而不是整个数据库以节省时间,则选择使用这个备份。这种方法只备份特定的数据库文件或文件组,同时还要定期备份事务日志,这样在恢复时可以只恢复已损坏的文件,而不用恢复数据库的其余部分,从而加快了恢复速度。,2.恢复模式 (1)简单恢复模式 不需要支持时间点的恢复,是为了恢复到上一次备份点的数据库而设计的。在“简单”模式下,只能对数据库执行完整备份和差异备份。在该模式下,数据库会自动把不活动的日志删除,因此简化了数据库的备份,但因为没有事务日志备份,所以不能恢复到失败的时间点。 (2)完整恢复模式

7、 支持时间点的恢复,能够恢复所有数据。在“完整”模式下,可以对数据库执行完整备份、差异备份和事务日志备份,是可供选择的备份选项最完整的一种模式。,(3)大容量日志恢复模式 不支持时间点恢复。在“大容量日志”模式下,与“完整模式”类似,可以执行完整备份、差异式备份和事务日志备份。但是这种模式,对于SELECT INTO、BULK INSERT、WRITETEXT和UPDATETEXT等大批量数据复制的操作,在事务日志中会以节省空间的方式来记录,而不像“完整”模式时记录得那么完整。因此,对于这些操作的恢复会受影响,无法恢复到特定的时间点。,12.2 备份数据库,1. 使用SQL Server Ma

8、nagement Studio备份数据库 (1)创建备份设备 备份设备是用来存储数据库、事务日志或者文件和文件组备份的存储介质,所在执行备份数据之前,首先要创建备份设备和管理备份设备。 创建设备的方法有两种: 一是使用SQL Server Management Studio工具创建; 二是使用系统存储过程sp_addumpdevice创建。,使用SQL Server Management Studio完成备份设备的创建步骤: 在“对象资源管理器”中,依次展开“服务器对象”“备份设备”节点,右击选择“新建备份设备”命令,弹出新建备份设备窗口。 在“设备名称”文本框中输入备份设备名 “StudCo

9、urse_Bak_Device”,单击“浏览”,修改路径为“D:BakData StudCourse_Bak.bak”,单击“确定”按钮即可,如图1所示。,图1 创建备份设备,使用系统存储过程SP_ADDUMPDEVICE创建备份设备: SP_ADDUMPDEVICE的基本语法如下: SP_ADDUMPDEVICE devtype = device_type , logicalname = logical_name , physicalname = physical_name , cntrltype = controller_type | devstatus = device_status ,

10、(2)管理备份设备 查看备份设备 可以通过两种方式查看服务器上所有备份设备,一种是使用SQL Server Management Studio工具,另一种是使用系统存储过程SP_HELPDEVICE。 删除备份设备 如果不再需要的备份设备,可以将其删除,删除备份设备后,其上的数据都将丢失。删除备份设备也有两种方式,一种是使用SQL Server Management Studio工具,另一种是使用系统存储过程SP_DROPDEVICE。,(3)备份操作 具体步骤如下: 连接到相应的SQL Server服务器实例,在“对象资源管理器”中,展开实例中的“数据库”节点,选择“学生选课”节点,右击选择

11、“任务”“备份”命令,出现“备份数据库”对话框。如图2所示。 单击“常规”选择页,在“数据库”下拉列表中选择“学生选课”选项;在“备份类型”下拉列表中选择“完整”选项;在“备份组件”区域选中“数据库”单选按钮;在“目标”区域已经给出了默认的备份文件名,选中后,单击“删除”按钮删除;在“目标”区域单击“添加”按钮,打开“选择备份目标”对话框,选中“备份设备”单选按钮,并在对应的下拉列表框中选择相应的备份设备选项,单击“确定”按钮 。如图3所示。,选择“选项”页,可以设置数据库备份的高级选项,在“备份数据库-学生选课”对话框中,切换到“选项”选择页,选中“覆盖所有现有备份集”单选按钮,这样系统在创

12、建备份时将初始化备份设备并覆盖原有的备份内容。如图4所示。 以上的设置完成之后,单击“确定”按钮,系统将按照所选的设置对数据库进行备份。 如果没有发生错误,将出现备份成功的对话框。,图2 创建数据库备份,图3 添加备份目标,图4 备份数据库的选项,12.2.2 使用T-SQL语句备份数据库 T-SQL语言里提供了BACKUP DATABASE语句来备份数据库,使用该语句可以完成数据库的完整备份、差异备份以及文件和文件组备份。如果要备份事务日志则要使用BACKUP LOG语句。,(1)完整备份和差异备份 完整备份和差异备份的语法格式如下: BACKUP DATABASE database_nam

13、e | database_name_var TO , n next-mirror-to WITH DIFFERENTIAL | , n COPY_ONLY | COMPRESSION | NO_COMPRESSION | DESCRIPTION = text | text_variable | NAME = backup_set_name | backup_set_name_var | PASSWORD = password | password_variable | EXPIREDATE = date | date_var | RETAINDAYS = days | days_var ,其中

14、,各参数说明如下。 database_name | database_name_var:指定要备份的数据库名或存放数据库名称的变量。 :指定用于备份的逻辑备份设备名或物理备份设备名。 :=MIRROR TO ,n:指定将要镜像TO子句中指定备份设备的一个或多个备份设备。最多可以使用三个MIRROR TO子句。 WITH选项:指定要用于备份操作的选项。 DIFFERENTIAL:只能与BACKUP DATABASE一起使用,指定数据库备份或文件备份只包含上次完整备份后修改的数据库或文件部分,即要做差异备份。默认情况下,BACKUP DATABASE创建完整备份。 :指定一些诸如是否仅复制备份、是

15、否对此备份执行备份压缩、说明备份集的自由格式文本等操作选项。 COPY_ONLY:指定备份为“仅复制备份”,该备份不影响正常的备份顺序。仅复制备份是独立于定期计划的常规备份而创建的。仅复制备份不会影响数据库的总体备份和恢复过程 COMPRESSION| NO_COMPRESSION:显示是否启用备份压缩。 DESCRIPTION:指定说明备份集的自由格式文本。该字符串最长可以有 255 个字符。 NAME:指定备份集的名称。名称最长可达 128 个字符。如果未指定 NAME,它将为空。 PASSWORD:为备份集设置密码。PASSWORD 是一个字符串。 EXPIREDATE:指定备份集到期和

16、允许被覆盖的日期。 RETAINDAYS:指定必须经过多少天才可以覆盖该备份媒体集。,(2)文件和文件组备份 备份文件和文件组的语法格式和完整备份、差异备份的代码基本一样,不同的是在语句“TO ”前多了一句“”,该语法块里的参数如下。 FILE:备份的数据库逻辑文件名。 FIELGROUP:备份的数据库文件组名。 (3)事务日志备份 事务日志备份和完整备份、差异备份的代码基本一样,只是将完整备份、差异备份中的BACKUP DATABASE修改为BACKUP LOG。,12.2.3 备份压缩 数据库执行备份操作,需要占用一定的磁盘空间。如果一个公司的数据库非常庞大,那么对数据库的备份就需要很大的空间。对于数据库管理员来说,这是一件十分头疼的事情。幸运的是,在SQL Server 2008中新增了数据压

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

当前位置:首页 > 高等教育 > 大学课件

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