数据库备份和恢复及系统安全.ppt
《数据库备份和恢复及系统安全.ppt》由会员分享,可在线阅读,更多相关《数据库备份和恢复及系统安全.ppt(80页珍藏版)》请在三一办公上搜索。
1、数据库备份和恢复,备 份,数据库的备份和恢复是数据库管理员维护数据库安全性和完整性必不可少的操作,合理地进行备份和恢复可以将可预见的和不可预见的问题对数据库造成的伤害降到最低。当运行SQL Server的服务器出现故障,或者数据库遭到某种程度的破坏时,可以利用以前对数据库所做的备份重建或恢复数据库。,备份设备,磁盘:以硬盘或其它磁盘类设备为存储介质。磁盘备份设备可以存储在本地机器上,也可以存储在网络的远程磁盘上。如果数据备份存储在本地机器上,在由于存储介质故障或服务器崩溃而造成数据丢失的情况下,备份就没有意义了。因此,要及时将备份文件复制到远程磁盘上。磁带:使用磁带作为存储介质,必须将磁带物理
2、地安装在运行SQL Server的计算机上,磁带备份不支持网络远程备份。命名管道:微软专门为第三方软件供应商提供的一个备份和恢复方式。如果要将数据库备份到命名管道设备上,必须提供管道名。,对数据库进行备份时,备份设备可以采用物理设备名称和逻辑设备名称两种方式。物理设备名称:即操作系统文件名,直接采用备份文件在磁盘上以文件方式存储的完整路径名,例如“D:backupdata_full.bak”。逻辑设备名称:为物理备份设备指定的可选的逻辑别名。使用逻辑设备名称可以简化备份路径。,创建逻辑备份设备的过程为:1)打开“对象资源管理器”,在“服务器对象”节点下找到“备份设备”节点,单击鼠标右键,弹出右
3、键菜单。2)选择“新建备份设备”菜单,弹出新建备份设备窗口。3)输入备份设备逻辑名称,并指定备份设备的物理路径,单击“确定”即可。,也可以使用系统存储过程sp_addumpdevice来创建逻辑备份设备,该存储过程的语法格式为:sp_addumpdevice devtype=device_type,logicalname=logical_name,physicalname=physical_name说明:devtype=device_type:备份设备的类型,可以是disk或tape。logicalname=logical_name:备份设备的逻辑名称。physicalname=physica
4、l_name:备份设备的物理名称。物理名称必须遵从操作系统文件名规则或网络设备的通用命名约定,并且必须包含完整路径。,数据备份的范围可以是完整的数据库、部分数据库或者一组文件或文件组,对此,SQL Server 2008提供四种备份方式,以满足不同数据库系统的备份需求。完整备份 完整备份是指备份整个数据库,包括表、视图、存储过程和触发器等数据库对象,还包括能够恢复这些数据的足够的事务日志。特点:完整备份的优点是操作比较简单,在恢复时只需要一步就可以将数据库恢复到以前的状态。但是仅依靠完整备份只能将数据库恢复到上一次备份操作结束时的状态,而从上次备份结束以后到数据库发生意外时的数据库的一切操作都
5、将丢失。而且,因为完整备份对整个数据库进行备份,执行一次完整备份需要很大的磁盘空间和较长的时间,因此完整备份不能频繁地进行。,备份方式,差异备份 差异备份是指备份最近一次完整备份之后数据库发生改变的部分,最近一次完整备份称为“差异基准”。特点:因为差异备份只备份上次完整备份以来修改的数据页,所以执行速度更快,备份时间更短,可以相对频繁地进行,以降低数据丢失的风险。通常,一个完整备份之后,会执行若干个相继的差异备份。还原时,首先还原完整备份,然后再还原最新的差异备份。经过一段时间后,随着数据库的更新,包含在差异备份中的数据量会增加,这使得创建和还原备份的速度变慢。因此,必须重新创建一个完整备份,
6、为另一个系列的差异备份提供新的差异基准。,事务日志备份 只对事务日志文件进行的备份称为事务日志备份。特点:使用事务日志备份可以在意外发生时将所有已经提交的事务全部恢复,因此使用这种备份方式可以将数据库恢复到意外发生前的状态或指定时间点时的状态,从而使数据损失降低到最小。事务日志备份需要的备份资源远远少于完整备份和差异备份,因此可以频繁使用事务日志备份,以便尽量减少数据丢失的可能性。,文件和文件组备份 文件和文件组备份是指单独备份组成数据库的文件和文件组,在恢复数据库时可以只恢复遭到破坏的文件和文件组,而不需要恢复数据库的其他部分,从而加快了恢复的速度。特点:这种备份方式适用于包含多个文件或文件
7、组的 SQL Server 数据库,如果数据库由位于不同磁盘上的若干个文件组成,在其中一个磁盘发生故障时,只需还原故障磁盘上的文件,其他文件保持不变。,数据库备份操作,步骤:1、连接到相应的SQL Server服务器实例之后,在【对象资源管理器】中,单击服务器名称以展开服务器树。找到【数据库】节点展开,选择要备份的系统数据库或用户数据库,单击鼠标右键,在弹出的快捷菜单中选择【任务】【备份】命令。2、单击【备份】命令后,出现“备份数据库”对话框。3、在“数据库”下拉列表中将出现刚选择的数据库名,也可以从列表中选择其他数据库备份。,4、在“恢复模式”下拉列表中选择恢复模式。5、在“备份类型”下拉列
8、表中选择备份类型:完整、差异或事务日志。在“备份组件”选项中选择“数据库”或“文件和文件组”,每种组件都支持三种备份类型。如果选择备份“文件和文件组”,则出现“选择文件和文件组”对话框,从中选择要备份的文件或文件组即可。6、在“名称”文本框中输入备份集的名称,也可以接受系统默认的备份集名称。在“说明”文本框中输入备份集的说明。7、在“备份集过期时间”选项中指定备份集在特定天数后过期或特定日期过期。8、在“目标”中选择“磁盘”或“磁带”,同时添加相应的备份设备到“目标”列表框中。,9、在“选择页”窗格中,单击“选项”,可以打开数据库备份的高级选项选项说明:“覆盖媒体”选项。可以选择“备份到现有媒
9、体集”或“备份到新媒体集并清除所有现有备份集”。如果选择“备份到现有媒体集”,则又有两个选项供选择:“追加到现有备份集”或“覆盖所有现有备份集”。选择“追加到现有备份集”选项,则本次备份内容将追加到以前的备份内容之后,以前的备份内容还将保留,在恢复数据库时可以选择使用哪次的备份内容进行恢复。如果选择“覆盖所有现有备份集”选项,则本次备份内容将覆盖掉以前的备份,在恢复数据库时只能将数据库恢复到最后一次备份时的状态。如果选中“检查媒体集名称和备份集到期时间”复选框,并且在“媒体集名称”文本框中输入了名称,将检查媒体以确定实际名称是否与此处输入的名称匹配。如果选择了“覆盖所有现有备份集”选项,则检查
10、备份集是否到期,在到期之前不允许覆盖,此次备份失败。“备份到新媒体集并清除所有现有备份集”选项,请在“新建媒体集名称”文本框中输入名称,在“新建媒体集说明”文本框中描述媒体集。,“可靠性”选项,有三个复选框共选择:“完成后验证备份”可以验证备份集是否完整以及所有卷是否都可读;“写入媒体前检查校验和”选项可以在写入备份媒体前验证校验和,选择此选项可能会增大工作负荷,减低备份操作的吞吐量;“出错时继续”选项可以在备份过程中出现错误时继续备份。“事务日志”选项,只有在“常规”选项卡中指定备份类型为“事务日志”时,该选项才可用。“磁带机”选项,如果备份目标为“磁带”时,该选项可用。,备份命令,1.完整
11、备份和差异备份 实现完整备份和差异备份的语法格式为:Back Database database_name|database_name_var To,.n With Differential|,.n;,说明:database_name:要备份的数据库名称。database_name_var:存储要备份的数据库名称的变量。backup_device:指定用于备份操作的逻辑备份设备或物理备份设备。如果使用逻辑备份设备,应该使用下列格式:logical_device_name|logical_device_name_var,指定逻辑备份设备的名称。如果使用物理备份设备,使用下列格式:Disk|Tap
12、e=physical_device_name|physical_device_name_var,指定磁盘文件或磁带。Differential:指定只备份上次完整备份后更改的数据库部分,即差异备份。必须执行过一次完整备份之后,才能做差异备份。general_WITH_options:备份操作的With选项,包含备份选项、媒体集选项、错误处理选项、数据传输选项等,这里只对几个常用的选项进行说明。Expiredate=date|date_var指定备份集到期的时间;Retaindays=days|days_var指定备份集经过多少天之后到期;如果同时使用这两个选项,Retaindays的优先级别将高
13、于Expiredate。Password=password|password_variable为备份集指定密码,如果为备份集设置了密码,则必须提供该密码才能对该备份集执行任何还原操作;Noinit|Init 控制备份操作是追加还是覆盖备份媒体中的现有备份集。默认为追加到媒体中最新的备份集(Noinit)。Noskip|Skip 控制备份操作是否在覆盖媒体中的备份集之前检查它们的过期日期和时间。Noskip为默认设置,指示 Backup 语句在可以覆盖媒体上的所有备份集之前先检查它们的过期日期。,2.事务日志备份实现事务日志备份的Backup语句的语法格式为:Backup Log databas
14、e_name|database_name_var To,.n With;,3.文件和文件组备份Backup Database database_name|database_name_var,.n To,.n With Differential|,.n;,说明:file_or_filegroup:指定要进行备份的文件或文件组名。如果要对文件进行备份,可以使用下列格式FILE=logical_file_name|logical_file_name_var,指定要备份的文件的逻辑名称;如果要对文件组进行备份,可以使用Filegroup=logical_filegroup_name|logical_f
15、ilegroup_name_var,指定要备份的文件组的名称。其他参数的含义与完整备份语句中参数含义相同。,恢复,在备份和恢复中总是存在着这样的矛盾:如果希望在发生所有故障的情况下都可以完全恢复数据库,则备份时需要占用很大的空间;如果希望使用较小的备份空间,则又不能完全保证数据库的顺利恢复。SQL Server 2008提供了3种恢复模式:简单恢复模式、完整恢复模式和大容量日志模式,以便给用户在空间需求和安全保障方面提供更多的选择。,1.简单恢复模式 在简单恢复模式下不做事务日志备份,可最大程度地减少事务日志的管理开销。如果数据库损坏,则简单恢复模式将面临极大的数据丢失风险。数据只能恢复到最后
16、一次备份时的状态。因此,在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据。,2.完全恢复模式 相对于简单恢复模式而言,完整恢复模式和大容量日志恢复模式提供了更强的数据保护功能。这些恢复模式基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失数据。完整恢复模式需要日志备份,此模式完整记录所有事务,并将事务日志记录保留到对其备份完毕为止。如果能够在出现故障后备份日志尾部,则可以使用完整恢复模式将数据库恢复到故障点。完整恢复模式可以恢复到任意时点。,3.大容量日志模式 通常用作完整恢复模式的附加模式。对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复
17、模式可提高性能并减少日志空间使用量,该模式需要日志备份。与完整恢复模式相同,大容量日志恢复模式也将事务日志记录保留到对其备份完毕为止,但是大容量日志恢复模式不支持时点恢复。,对于一个数据库的恢复模式,可以通过以下步骤进行查看或更改。1、连接到相应的SQL Server实例之后,在【对象资源管理器】中单击相应的服务器名以展开服务器树。2、展开【数据库】节点,用鼠标右键单击要查看恢复模式的数据库名,在弹出的快捷菜单中选择【属性】命令。3)将打开“数据库属性”对话框,在“选择页”列表中,单击“选项”。4)在“恢复模式”下拉列表中可以看到数据库当前的恢复模式,也可以从列表中选择不同的模式来更改数据库的
18、恢复模式。,恢复操作,步骤:1、连接到相应的服务器实例之后,在【对象资源管理器】中单击服务器名称以展开服务器节点。2、用鼠标右键单击要恢复的数据库,在弹出的快捷菜单中选择“任务”“还原”“数据库”命令。3、单击菜单命令之后将打开“还原数据库”对话框。4、在“常规”选项卡上,要恢复的数据库的名称将显示在“目标数据库”下拉列表框中。如果要将备份还原成新的数据库,可以在“目标数据库”中输入要创建的数据库名称。,5、在“目标时间点”文本框中,可以使用默认值“最近状态”,也可以单击右边的“浏览”按钮打开“时点还原”对话框,选择具体的日期和时间。6、如果要指定还原的备份集的源和位置,可以选择以下选项:源数
19、据库:在列表框中输入源数据库的名称,该选项表示使用以前对该数据库所做的备份内容进行还原。源设备:单击右边的【浏览】按钮,打开“指定备份”对话框。在“备份媒体”列表框中,从列出的设备类型中选择一种。单击【添加】按钮可以将一个或多个备份设备添加到“备份位置”列表框中,单击【确定】按钮返回到“常规”选项卡。,7、在“选择用于还原的备份集”表格中,选择用于还原的备份。默认情况下,系统会推荐一个恢复计划,如果修改系统建议的恢复计划,可以在表格中更改选择。8、如果要查看或选择高级选项,可以单击“选择页”中的“选项”,将切换到“选项”选项卡。,9、在“还原选项”区域,有以下几个选项:覆盖现有数据库,指定还原
20、操作应覆盖现有数据库及文件,即使已存在同名的其他数据库或文件。保留复制设置,将已发布的数据库还原到创建该数据库的服务器之外的服务器时,保留复制设置。该选项只能与“回滚未提交的事务,使数据库处于可以使用的状态”选项一起使用。还原每个备份之前进行提示,还原初始备份之后,该选项会在还原每个附加备份集之前打开“继续还原”对话框,提示是否需要继续进行还原。限制访问还原的数据库,使还原的数据库仅供db_owner、dbcreator或sysadmin的成员使用。,10、“将数据库文件还原为”表格中列出了原始数据库文件名称,可以更改到要还原到的任意文件的路径和名称。11、“恢复状态”选项用来指定恢复操作之后
21、的数据库状态,有以下几个选项可以选择:回滚未提交的事务,使数据库处于可使用的状态。使用该选项进行恢复之后,数据库即可使用。不对数据库执行任何操作,不回滚未提交的事务。该选项使数据库处于未恢复的状态,接下来可以执行其他的恢复操作。使数据库处于只读模式。该选项使数据库处于只读的状态。,恢复命令,1.恢复完整备份恢复完整备份语法格式为:Restore Database database_name|database_name_var From,.n With Recovery|Norecovery|Standby=standby_file_name|standby_file_name_var|,.n,
22、.n;,说明:database_name:要恢复到的数据库名称。database_name_var:存储要恢复的数据库名称的变量。From backup_device:指定要从哪些备份设备还原备份。如果使用逻辑备份设备,应该使用下列格式:logical_device_name|logical_device_name_var,指定逻辑备份设备的名称。如果使用物理备份设备,使用下列格式:Disk|Tape=physical_device_name|physical_device_name_var,指定磁盘文件或磁带。如果省略From子句,则说明使用该数据库以前的备份内容恢复数据库,且必须在 Wit
23、h子句中指定 Norecovery、Recovery 或 Standby。Recovery:指示还原操作回滚任何未提交的事务,在恢复进程后即可随时使用数据库。如果既没有指定 Norecovery 和 Recovery,也没有指定 Standby,则默认为 Recovery。如果安排了后续 Restore 操作(Restore Log 或从差异数据库备份 Restore Database),则应改为指定 Norecovery 或 Standby。Norecovery:指示还原操作不回滚任何未提交的事务,如果稍后必须应用另一个恢复操作,则应指定 Norecovery或 Standby 选项。还原数
24、据库备份和一个或多个事务日志时,或者需要多个 Restore 语句(例如还原一个完整数据库备份并随后还原一个差异数据库备份)时,Restore 需要对所有语句使用 With Norecovery选项,但最后的 Restore 语句除外。最佳方法是按多步骤还原顺序对所有语句都使用 With Norecovery,直到达到所需的恢复点为止,然后仅使用单独的 Restore With Recovery 语句执行恢复。,Standby=standby_file_name 指定一个允许撤消恢复效果的备用文件。general_WITH_options:恢复操作的With选项,包含还原操作选项、备份集选项、
25、错误管理选项、数据传输选项等,这里只对几个常用的选项进行说明。Move logical_file_name_in_backup To operating_system_file_name.n指定对于逻辑名称由 logical_file_name_in_backup 指定的数据或日志文件,应当通过将其还原到 operating_system_file_name 所指定的位置来对其进行移动。默认情况下,logical_file_name将还原到其原始位置。Replace指定即使存在另一个具有相同名称的数据库,SQL Server 也应该创建指定的数据库及其相关文件。在这种情况下将删除现有的数据库。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 备份 恢复 系统安全
链接地址:https://www.31ppt.com/p-6578490.html