-
- 素材大小:
- 717.5 KB
- 素材授权:
- 免费下载
- 素材格式:
- .ppt
- 素材上传:
- chenrong
- 上传时间:
- 2018-08-10
- 素材编号:
- 206148
- 素材类别:
- 答辩PPT模板
-
素材预览
这是sql server数据库恢复与备份答辩ppt,包括了本章学习目标,备份,概述,创建逻辑备份设备的过程为,备份方式等内容,欢迎点击下载。
sql server数据库恢复与备份答辩ppt是由红软PPT免费下载网推荐的一款答辩PPT模板类型的PowerPoint.
数据库实用教程
—— SQL Server 2008
本章学习目标:
理解数据库备份和恢复的原理
掌握数据库完整备份和从完整备份恢复的方法
掌握数据库差异备份和从差异备份恢复的方法
掌握数据库事务日志备份和从事务日志备份恢复的方法
掌握文件和文件组备份和从文件和文件组备份恢复的方法
13.1 备份
数据库的备份和恢复是数据库管理员维护数据库安全性和完整性必不可少的操作,合理地进行备份和恢复可以将可预见的和不可预见的问题对数据库造成的伤害降到最低。当运行SQL Server的服务器出现故障,或者数据库遭到某种程度的破坏时,可以利用以前对数据库所做的备份重建或恢复数据库。
13.1.1 概述
1. 备份设备
数据库备份设备是指用来存储备份数据的存储介质,常用的备份设备类型包括磁盘、磁带和命名管道。
磁盘:以硬盘或其它磁盘类设备为存储介质。磁盘备份设备就可以存储在本地机器上,也可以存储在网络的远程磁盘上。如果数据备份存储在本地机器上,在由于存储介质故障或服务器崩溃而造成数据丢失的情况下,备份就没有意义了。因此,要及时将备份文件复制到远程磁盘上。如果采用远程磁盘作为备份设备,要采用统一命名方式(UNC)来表示备份文件,即“\\远程服务器名\共享文件名\路径名\文件名”。
磁带:使用磁带作为存储介质,必须将磁带物理地安装在运行SQL Server的计算机上,磁带备份不支持网络远程备份。在 SQL Server 的以后版本中将不再支持磁带备份设备。
命名管道:微软专门为第三方软件供应商提供的一个备份和恢复方式。如果要将数据库备份到命名管道设备上,必须提供管道名。
对数据库进行备份时,备份设备可以采用物理设备名称和逻辑设备名称两种方式。
物理设备名称:即操作系统文件名,直接采用备份文件在磁盘上以文件方式存储的完整路径名,例如“D:\backup\data_full.bak”。
逻辑设备名称:为物理备份设备指定的可选的逻辑别名。使用逻辑设备名称可以简化备份路径。
创建逻辑备份设备的过程为:
1)打开【对象资源管理器】,在【服务器对象】节点下找到【备份设备】节点,单击鼠标右键,弹出右键菜单。
2)选择【新建备份设备】菜单,弹出新建备份设备窗口。
3)输入备份设备逻辑名称,并指定备份设备的物理路径,单击【确定】即可。
也可以使用系统存储过程sp_addumpdevice来创建
逻辑备份设备,该存储过程的语法格式为:
sp_addumpdevice [ @devtype = ] 'device_type' , [ @logicalname = ] 'logical_name' , [ @physicalname = ] 'physical_name'
说明:
[ @devtype = ] 'device_type':备份设备的类型,可以是’disk’或’tape’。
[ @logicalname = ] 'logical_name':备份设备的逻辑名称。
[ @physicalname = ] 'physical_name’: 备份设备的物理名称。物理名称必须遵从操作系统文件名规则或网络设备的通用命名约定,并且必须包含完整路径。
2. 备份方式
数据备份的范围可以是完整的数据库、部分数据库或者一组文件或文件组,对此,SQL Server 2008提供四种备份方式,以满足不同数据库系统的备份需求。
1)完整备份
完整备份是指备份整个数据库,不仅包括表、视图、存储过程和触发器等数据库对象,还包括能够恢复这些数据的足够的事务日志。完整备份的优点是操作比较简单,在恢复时只需要一步就可以将数据库恢复到以前的状态。但是仅依靠完整备份只能将数据库恢复到上一次备份操作结束时的状态,而从上次备份结束以后到数据库发生意外时的数据库的一切操作都将丢失。而且,因为完整备份对整个数据库进行备份,执行一次完整备份需要很大的磁盘空间和较长的时间,因此完整备份不能频繁地进行。
2)差异备份
差异备份是指备份最近一次完整备份之后数据库发生改变的部分,最近一次完整备份称为“差异基准”。因为差异备份只备份上次完整备份以来修改的数据页,所以执行速度更快,备份时间更短,可以相对频繁地进行,以降低数据丢失的风险。通常,一个完整备份之后,会执行若干个相继的差异备份。还原时,首先还原完整备份,然后再还原最新的差异备份。与完整备份一样,使用差异备份只能将数据库恢复到最后一次差异备份结束时刻的状态,无法将数据库恢复到出现意外前的某一个指定时刻的状态。
经过一段时间后,随着数据库的更新,包含在差异备份中的数据量会增加,这使得创建和还原备份的速度变慢。因此,必须重新创建一个完整备份,为另一个系列的差异备份提供新的差异基准。
3)事务日志备份
只对事务日志文件进行的备份称为事务日志备份。使用事务日志备份可以在意外发生时将所有已经提交的事务全部恢复,因此使用这种备份方式可以将数据库恢复到意外发生前的状态或指定时间点时的状态,从而使数据损失降低到最小。事务日志备份需要的备份资源远远少于完整备份和差异备份,因此可以频繁使用事务日志备份,以便尽量减少数据丢失的可能性。
4)文件和文件组备份
文件和文件组备份是指单独备份组成数据库的文件和文件组,在恢复数据库时可以只恢复遭到破坏的文件和文件组,而不需要恢复数据库的其他部分,从而加快了恢复的速度。这种备份方式适用于包含多个文件或文件组的 SQL Server 数据库,如果数据库由位于不同磁盘上的若干个文件组成,在其中一个磁盘发生故障时,只需还原故障磁盘上的文件,其他文件保持不变。
13.1.2 数据库备份操作
具体步骤为:
1)连接到相应的SQL Server服务器实例之后,在【对象资源管理器】中,单击服务器名称以展开服务器树。找到【数据库】节点展开,选择要备份的系统数据库或用户数据库,单击鼠标右键,在弹出的快捷菜单中选择【任务】—>【备份】命令。
单击【备份】命令后,出现“备份数据库”对话框。
在“数据库”下拉列表中将出现刚选择的数据库名,也可以从列表中选择其他数据库备份。
4)在“恢复模式”下拉列表中选择恢复模式。
5)在“备份类型”下拉列表中选择备份类型:完整、差异或事务日志。在“备份组件”选项中选择“数据库”或“文件和文件组”,每种组件都支持三种备份类型。如果选择备份“文件和文件组”,则出现“选择文件和文件组”对话框,从中选择要备份的文件或文件组即可。
6)在“名称”文本框中输入备份集的名称,也可以接受系统默认的备份集名称。在“说明”文本框中输入备份集的说明。
7)在“备份集过期时间”选项中指定备份集在特定天数后过期或特定日期过期。
8)在“目标”中选择“磁盘”或“磁带”,同时添加相应的备份设备到“目标”列表框中。
9)在“选择页”窗格中,单击“选项”,可以打开数据库备份的高级选项。
选项说明:
“覆盖媒体”选项。可以选择“备份到现有媒体集”或“备份到新媒体集并清除所有现有备份集”。
如果选择“备份到现有媒体集”,则又有两个选项供选择:“追加到现有备份集”或“覆盖所有现有备份集”。
选择“追加到现有备份集”选项,则本次备份内容将追加到以前的备份内容之后,以前的备份内容还将保留,在恢复数据库时可以选择使用哪次的备份内容进行恢复。
如果选择“覆盖所有现有备份集”选项,则本次备份内容将覆盖掉以前的备份,在恢复数据库时只能将数据库恢复到最后一次备份时的状态。
如果选中“检查媒体集名称和备份集到期时间”复选框,并且在“媒体集名称”文本框中输入了名称,将检查媒体以确定实际名称是否与此处输入的名称匹配。如果选择了“覆盖所有现有备份集”选项,则检查备份集是否到期,在到期之前不允许覆盖,此次备份失败。
“备份到新媒体集并清除所有现有备份集”选项,请在“新建媒体集名称”文本框中输入名称,在“新建媒体集说明”文本框中描述媒体集。
“可靠性”选项,有三个复选框共选择:“完成后验证备份”可以验证备份集是否完整以及所有卷是否都可读;“写入媒体前检查校验和”选项可以在写入备份媒体前验证校验和,选择此选项可能会增大工作负荷,减低备份操作的吞吐量;“出错时继续”选项可以在备份过程中出现错误时继续备份。
“事务日志”选项,只有在“常规”选项卡中指定备份类型为“事务日志”时,该选项才可用。
“磁带机”选项,如果备份目标为“磁带”时,该选项可用。
10)以上的设置完成之后,单击【确定】按钮,系统将按照所选的设置对数据库进行备份,如果没有发生错误,将出现备份成功的对话框,如图13.9所示。
13.1.3备份命令
1. 完整备份和差异备份
实现完整备份和差异备份的语法格式为:
Back Database { database_name | @database_name_var }
To <backup_device> [ ,...n ]
[ With { Differential | <general_WITH_options> [ ,...n ] }]
[;]
说明:
database_name:要备份的数据库名称。
@database_name_var:存储要备份的数据库名称的变量。
backup_device:指定用于备份操作的逻辑备份设备或物理备份设备。如果使用逻辑备份设备,应该使用下列格式:{ logical_device_name | @logical_device_name_var },指定逻辑备份设备的名称。如果使用物理备份设备,使用下列格式:{ Disk | Tape } = { 'physical_device_name' | @physical_device_name_var },指定磁盘文件或磁带。
Differential:指定只备份上次完整备份后更改的数据库部分,即差异备份。必须执行过一次完整备份之后,才能做差异备份。
general_WITH_options:备份操作的With选项,包含备份选项、媒体集选项、错误处理选项、数据传输选项等,这里只对几个常用的选项进行说明。Expiredate={date|@date_var}指定备份集到期的时间;Retaindays={days|@days_var}指定备份集经过多少天之后到期;如果同时使用这两个选项,Retaindays的优先级别将高于Expiredate。Password={password|@password_variable}为备份集指定密码,如果为备份集设置了密码,则必须提供该密码才能对该备份集执行任何还原操作;{ Noinit | Init } 控制备份操作是追加还是覆盖备份媒体中的现有备份集。默认为追加到媒体中最新的备份集 (Noinit)。{ Noskip| Skip }控制备份操作是否在覆盖媒体中的备份集之前检查它们的过期日期和时间。Noskip为默认设置,指示 Backup 语句在可以覆盖媒体上的所有备份集之前先检查它们的过期日期。
2. 事务日志备份
实现事务日志备份的Backup语句的语法格式为:
Backup Log { database_name | @database_name_var }
To <backup_device> [ ,...n ]
[ With { <general_WITH_options>]
[;]
3. 文件和文件组备份
Backup Database { database_name | @database_name_var }
<file_or_filegroup> [ ,...n ]
To <backup_device> [ ,...n ]
[ With { Differential | <general_WITH_options> [ ,...n ] }]
[;]
说明:
file_or_filegroup:指定要进行备份的文件或文件组名。如果要对文件进行备份,可以使用下列格式FILE = { logical_file_name | @logical_file_name_var },指定要备份的文件的逻辑名称;如果要对文件组进行备份,可以使用Filegroup = { logical_filegroup_name | @logical_filegroup_name_var },指定要备份的文件组的名称。
其他参数的含义与完整备份语句中参数含义相同。
13.2 恢复
13.2.1 概述
在备份和恢复中总是存在着这样的矛盾:如果希望在发生所有故障的情况下都可以完全恢复数据库,则备份时需要占用很大的空间;如果希望使用较小的备份空间,则又不能完全保证数据库的顺利恢复。SQL Server 2008提供了3种恢复模式:简单恢复模式、完整恢复模式和大容量日志模式,以便给用户在空间需求和安全保障方面提供更多的选择。
1. 简单恢复模式
在简单恢复模式下不做事务日志备份,可最大程度地减少事务日志的管理开销。如果数据库损坏,则简单恢复模式将面临极大的数据丢失风险。数据只能恢复到最后一次备份时的状态。因此,在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据。
2. 完全恢复模式
相对于简单恢复模式而言,完整恢复模式和大容量日志恢复模式提供了更强的数据保护功能。这些恢复模式基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失数据。完整恢复模式需要日志备份,此模式完整记录所有事务,并将事务日志记录保留到对其备份完毕为止。如果能够在出现故障后备份日志尾部,则可以使用完整恢复模式将数据库恢复到故障点。完整恢复模式可以恢复到任意时点。
3. 大容量日志模式
通常用作完整恢复模式的附加模式。对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复模式可提高性能并减少日志空间使用量,该模式需要日志备份。与完整恢复模式相同,大容量日志恢复模式也将事务日志记录保留到对其备份完毕为止,但是大容量日志恢复模式不支持时点恢复。
对于一个数据库的恢复模式,可
以通过以下步骤进行查看或更
改。
1)连接到相应的SQL Server实例之后,在【对象资源管理器】中单击相应的服务器名以展开服务器树。
2)展开【数据库】节点,用鼠标右键单击要查看恢复模式的数据库名,在弹出的快捷菜单中选择【属性】命令。
3)将打开“数据库属性”对话框,在“选择页”列表中,单击“选项” 。
4)在“恢复模式”下拉列表中可以看到数据库当前的恢复模式,也可以从列表中选择不同的模式来更改数据库的恢复模式。
13.2.2 恢复操作
可视化恢复数据库的操作步骤如下:
1)连接到相应的服务器实例之后,在【对象资源管理器】中单击服务器名称以展开服务器节点。
2)用鼠标右键单击要恢复的数据库,在弹出的快捷菜单中选择【任务】—>【还原】—>【数据库】命令。
3)单击菜单命令之后将打开“还原数据库”对话框。
4)在“常规”选项卡上,要恢复的数据库的名称将显示在“目标数据库”下拉列表框中。如果要将备份还原成新的数据库,可以在“目标数据库”中输入要创建的数据库名称。
5)在“目标时间点”文本框中,可以使用默认值“最近状态”,也可以单击右边的“浏览”按钮打开“时点还原”对话框,选择具体的日期和时间。
6)如果要指定还原的备份集的源和位置,可以选择以下选项:
源数据库,在列表框中输入源数据库的名称,该选项表示使用以前对该数据库所做的备份内容进行还原。
源设备,单击右边的【浏览】按钮,打开“指定备份”对话框,如图13.15所示。在“备份媒体”列表框中,从列出的设备类型中选择一种。单击【添加】按钮可以将一个或多个备份设备添加到“备份位置”列表框中,单击【确定】按钮返回到“常规”选项卡。
7)在“选择用于还原的备份集”表格中,选择用于还原的备份。默认情况下,系统会推荐一个恢复计划,如果修改系统建议的恢复计划,可以在表格中更改选择。
8)如果要查看或选择高级选项,可以单击“选择页”中的“选项”,将切换到“选项”选项卡。
9)在“还原选项”区域,有以下几个选项:
覆盖现有数据库,指定还原操作应覆盖现有数据库及文件,即使已存在同名的其他数据库或文件。
保留复制设置,将已发布的数据库还原到创建该数据库的服务器之外的服务器时,保留复制设置。该选项只能与“回滚未提交的事务,使数据库处于可以使用的状态…”选项一起使用。
还原每个备份之前进行提示,还原初始备份之后,该选项会在还原每个附加备份集之前打开“继续还原”对话框,提示是否需要继续进行还原。
限制访问还原的数据库,使还原的数据库仅供db_owner、dbcreator或sysadmin的成员使用。
10)“将数据库文件还原为”表格中列出了原始数据库文件名称,可以更改到要还原到的任意文件的路径和名称。
11)“恢复状态”选项用来指定恢复操作之后的数据库状态,有以下几个选项可以选择:
回滚未提交的事务,使数据库处于可使用的状态。使用该选项进行恢复之后,数据库即可使用。
不对数据库执行任何操作,不回滚未提交的事务。该选项使数据库处于未恢复的状态,接下来可以执行其他的恢复操作。
使数据库处于只读模式。该选项使数据库处于只读的状态。
13.2.3 恢复命令
1.恢复完整备份
恢复完整备份语法格式为:
Restore Database { database_name | @database_name_var }
[From <backup_device> [ ,...n ] ]
[With
{
[Recovery |Norecovery | Standby = {standby_file_name | @standby_file_name_var }]
|,<general_WITH_options>[ ,...n ]
}[ ,...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子句,则说明使用该数据库以前的备份内容恢复数据库,且必须在 With子句中指定 Norecovery、Recovery 或 Standby。
Recovery:指示还原操作回滚任何未提交的事务,在恢复进程后即可随时使用数据库。如果既没有指定 Norecovery 和 Recovery,也没有指定 Standby,则默认为 Recovery。如果安排了后续 Restore 操作(Restore Log 或从差异数据库备份 Restore Database),则应改为指定 Norecovery 或 Standby。
Norecovery:指示还原操作不回滚任何未提交的事务,如果稍后必须应用另一个恢复操作,则应指定 Norecovery或 Standby 选项。还原数据库备份和一个或多个事务日志时,或者需要多个 Restore 语句(例如还原一个完整数据库备份并随后还原一个差异数据库备份)时,Restore 需要对所有语句使用 With Norecovery选项,但最后的 Restore 语句除外。最佳方法是按多步骤还原顺序对所有语句都使用 With Norecovery,直到达到所需的恢复点为止,然后仅使用单独的 Restore With Recovery 语句执行恢复。
Standby = standby_file_name 指定一个允许撤消恢复效果的备用文件。
general_WITH_options:恢复操作的With选项,包含还原操作选项、备份集选项、错误管理选项、数据传输选项等,这里只对几个常用的选项进行说明。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 也应该创建指定的数据库及其相关文件。在这种情况下将删除现有的数据库。如果不指定 Replace 选项,则会执行安全检查。这样可以防止意外覆盖其他数据库。安全检查可确保在以下条件同时存在的情况下,Restore Database 语句不会将数据库还原到当前服务器:在 Restore 语句中命名的数据库已存在于当前服务器中,并且该数据库名称与备份集中记录的数据库名称不同。Restricted_User限制只有 db_owner、dbcreator 或 sysadmin 角色的成员才能访问新近还原的数据库。
2.恢复差异备份
使用Restore语句恢复差异备份的语法和恢复完整备份的Restore语句的语法格式一样,不过在进行恢复差异备份之前,首先需要恢复差异备份之前的完整备份,具体的步骤为:
1)执行带Norecovery选项的Restore Database语句,恢复差异备份之前的完整备份。
2)使用Restore Database语句指定要恢复差异备份的数据库名称,和要从中还原差异备份的备份设备名称。
3)如果恢复了差异备份之后,还要恢复事务日志备份,则应该使用Norecovery选项,否则使用Recovery选项。
4)执行Restore Database语句恢复差异备份。
3.恢复事务日志备份
恢复事务日志备份语法格式为:
Restore Log { database_name | @database_name_var }
[From <backup_device> [ ,...n ] ]
[With
{[ Recovery | Norecovery| Standby = {standby_file_name | @standby_file_name_var }]
|, <general_WITH_options>[ ,...n ]
|, <point_in_time_WITH_options>
}[ ,...n ]
]
[;]
说明:
point_in_time_WITH_options:时点还原选项,仅用于完全恢复模式和大容量日志记录恢复模式,主要有三个选项{ Stopat | Stopatmark | Stopbeforemark }。通过在 Stopat、Stopatmark 或 Stopbeforemark 子句中指定目标恢复点,可以将数据库还原到特定时间点或事务点。指定的时间或事务始终从日志备份还原。在还原序列的每个 Restore Log 语句中,必须在相同的Stopat、Stopatmark或Stopbeforemark 子句中指定目标时间或事务。Stopat = { ‘datetime’ | @datetime_var }指定将数据库还原到它在 datetime 或 @datetime_var 参数指定的日期和时间时的状态,如果指定的 Stopat 时间是在最后日志备份之后,则数据库将继续处于未恢复状态。Stopatmark = { ‘mark_name’ | ‘lsn:lsn_number’ } [ After ‘datetime’ ] 指定恢复至指定的恢复点,恢复中包括指定的生成时已经提交的事务。lsn_number参数指定了一个日志序列号。只有 Restore Log 语句支持 mark_name 参数。此参数在日志备份中标识一个事务标记。在 Restore Log 语句中,如果省略 After datetime,则恢复操作将在含有指定名称的第一个标记处停止。如果指定了 After datetime,则恢复操作将于达到 datetime 时或之后在含有指定名称的第一个标记处停止。Stopbeforemark = { ‘mark_name’ | ‘lsn:lsn_number’ } [ After ‘datetime’ ] 指定恢复至指定的恢复点为止。在恢复中不包括指定的事务,且在使用 With Recovery 时将回滚,其他参数和Stopmark选项中的参数含义相同。
其余选项的含义和Restore Database语句中的选项相同,
4.恢复文件和文件组备份
恢复文件和文件组备份的Restore语句的语法格式如下:
Restore Database { database_name | @database_name_var }
<file_or_filegroup> [ ,...n ]
[ From <backup_device> [ ,...n ] ]
With
{
[Recovery | Norecovery ]
[,<general_WITH_options> [ ,...n ]]
}[ ,...n ]
[;]
说明:
用于恢复文件和文件组备份的Restore Database语句和用于完整备份和差异备份的Restore Database语句的主要区别在<file_or_filegroup>语句块,该语句块的格式如下:
{ File = { logical_file_name_in_backup | @logical_file_name_in_backup_var }
|Filegroup = { logical_filegroup_name | @logical_filegroup_name_var }
}
其他参数的含义和用于恢复完整备份的Restore Database语句中的参数含义相同。
如果在创建文件备份之后对文件进行了修改,需要使用带NoRecovery选项的Restore语句对文件备份进行恢复,然后用Restore Log语句恢复事务日志。
13.3 本章小结
本章主要讲述了数据库备份的重要性、数据库备份的种类和各种数据库备份的方法,以及从数据库备份中恢复数据库的方法。通过本章的学习,读者应该掌握以下内容:
1)数据库备份的概念和种类。
2)各种数据库备份的实现方法。
3)数据库恢复模型。
4)从各种数据库备份中恢复数据库的方法。网上商城毕业答辩ppt:这是网上商城毕业答辩ppt,包括了研究的目的和意义,小组成员及分工,系统分析,系统设计,系统界面介绍,总结与展望等内容,欢迎点击下载。
书店毕业答辩ppt:这是书店毕业答辩ppt,包括了电商的发展,环保的角度,学生的需求,方便快捷性等内容,欢迎点击下载。
南邮答辩ppt:这是南邮答辩ppt,包括了研究背景和内容概述,基于多标记的神经网络短期负荷预测,基于多变量线性回归短期负荷预测,一种用于微电网系统的天气预测方法,总结等内容,欢迎点击下载。