数据库备份和还原.ppt

上传人:牧羊曲112 文档编号:6296429 上传时间:2023-10-14 格式:PPT 页数:33 大小:235.49KB
返回 下载 相关 举报
数据库备份和还原.ppt_第1页
第1页 / 共33页
数据库备份和还原.ppt_第2页
第2页 / 共33页
数据库备份和还原.ppt_第3页
第3页 / 共33页
数据库备份和还原.ppt_第4页
第4页 / 共33页
数据库备份和还原.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《数据库备份和还原.ppt》由会员分享,可在线阅读,更多相关《数据库备份和还原.ppt(33页珍藏版)》请在三一办公上搜索。

1、第13章数据库的备份与还原(数据库维护工作),在实际数据库应用系统中,计算机系统可能会受到各种各样的干扰和侵袭,最为常见的有病毒破坏、计算机硬件故障以及误操作等,这些异常情况很可能导致数据的丢失和破坏。为了能够尽快恢复系统的正常工作并把损失降低到最低,数据库管理系统必须能够对数据库中的数据进行备份,并在需要时及时恢复数据。而定期备份数据库,在发生故障时进行恢复则是DBA的日常重要工作之一。,新课导入:,教学目标:,知识目标:(1)了解数据库备份与恢复的基本概念;(2)掌握数据库各种备份类型及恢复模型的特点和使用场合;(3)了解备份设备的概念及分类,掌握数据库备份与恢复的方法。技能目标:(1)能

2、根据实际应用进行备份与恢复的需求分析;(2)会制定数据库备份与恢复方案;(3)能进行备份设备的创建,会进行定期或不定期的数据库备份,知道如何从备份中恢复数据;(4)会用重建主控实用工具重建一个master数据库。,数据库备份是指在某种介质上(磁盘、磁带等)创建完整数据库(或者其中一部分)的副本,并将所有的数据项都复制到备份集,以便在数据库遭到破坏时能够恢复数据库。执行数据库备份操作必须拥有对数据库备份的权限许可。,13.1 数据库备份的概述,数据库备份内容:系统数据库:master、msdb、model数据库用户数据库事务日志:记录了用户对数据库中数据的各种操作。,数据库备份频率:取决于修改数

3、据库的频繁程度,以及一旦出现意外丢失的工作量的大小,还有发生意外丢失数据的可能性大小。当在用户对数据库进行了加入数据、创建索引等操作时,应进行备份;此外,如果清除了事物日志,也应该备份。,数据库备份的类型:(1)完整数据库备份(Full Backup)备份数据库中当前所有的数据,包括事务日志。使用存储空间多,完成备份操作需要的时间长。所以完全数据库备份的创建频率通常比差异数据库备份和事务日志备份要低。适用备份容量较小,或数据库中的数据修改较少的数据库。,(2)差异数据库备份(Differential Backup)只备份自上一次完整数据库备份以来发生改变的内容和在差异备份过程中所发生的所有活动

4、。差异备份是基于以前的完整数据库备份的。比完整数据库备份小而且备份速度快,因此可以经常的备份,经常备份将减少数据丢失的危险。适合于修改频繁的数据库。,(3)事务日志备份(Transaction Log Backup)备份事务日志可以记录数据库的更改操作,但前提是在执行了完整数据库备份之后。其上次备份可以是完全数据库备份、差异数据库备份和事务日志备份。可以适用事务日志备份将数据库恢复到特定的即时点或恢复到故障点。,(4)文件和文件组备份(File and Filegroup Backup)适合于特大型数据库,因为一个很大的数据库要进行完全数据库备份需要很长的时间,那么可以将数据库的文件和文件组分

5、别进行备份。,13.2 数据库还原的概述,还原数据库是一个装载数据库的备份,然后应用事务日志重建的过程,这是数据库管理员另一项非常重要的工作。在数据库的还原过程中,用户不能进入数据库,当数据库被还原后,数据库中的所有数据都被替换掉。数据库备份是在正常情况下进行的,而数据库还原是在诸如硬件故障、软件故障或误操作等非正常的状态下进行的,因而其工作更加重要和复杂。,13.2 数据库还原的概述,数据库恢复模式:是数据库遭到破坏时还原数据库中数据的数据存储方式,它与可用性、性能、磁盘空间等因素相关。备份和还原操作是在“恢复模式”下进行的,恢复模式是一个数据库属性,它用于控制数据库备份和还原操作基本行为。

6、,13.2 数据库还原的概述,数据库恢复模式:(1)完整恢复模式(2)简单恢复模式(3)大容量日志记录恢复模式,13.2 数据库还原的概述,(1)完整恢复模式是等级最高的数据库恢复模式。在完整恢复模式中,对数据库的所有的操作都记录在数据库的事务日志中。即使那些大容量数据操作和创建索引的操作,也都记录在了数据库的事务日志中。当数据库遭到破坏之后,可以使用该数据库的事务日志迅速还原数据库。在完整恢复模式中,由于事务日志记录了数据库的所有变化,所以可以使用事务日志将数据库还原到任意的时刻点。但是,这种恢复模式耗费大量的磁盘空间。除非是那种事务日志非常重要的数据库备份策略,一般不使用这种恢复模式。,1

7、3.2 数据库还原的概述,(2)简单恢复模式简单恢复模式简略地记录大多数事务,所记录的信息只是为了确保在系统崩溃或还原数据备份之后数据库的一致性。对于那些规模比较小的数据库或数据不经常改变的数据库来说,可以使用简单恢复模式。当使用简单恢复模式时,可以通过执行完全数据库备份和差异数据库备份来还原数据库,数据库只能还原到执行备份操作的时刻点。执行备份操作之后的所有数据修改都丢失并且需要重建。,13.2 数据库还原的概述,(3)大容量日志恢复模式就像完整恢复模式一样,大容量日志恢复模式也使用数据库备份和日志备份来还原数据库。但是,在使用了大容量日志恢复模式的数据库中,其事务日志耗费的磁盘空间远远小于

8、使用完整恢复模式的数据库的事务日志。此模式简略地记录大多数大容量操作(例如,索引创建和大容量加载),完整地记录其他事务。大容量日志恢复提高大容量操作的性能,常用作完整恢复模式的补充。,设置数据库的恢复模式:数据库单击右键属性选项选择恢复模式简单恢复模式同时支持数据库备份和文件备份,但不支持事务日志备份。备份非常易于管理,因为始终不会备份事务日志。但是,如果没有日志备份,数据库只能还原到最近数据备份的末尾。如果操作失败,则在最近数据备份之后所做的更新便会全部丢失。在完整恢复模式和大容量日志恢复模式下,差异数据库备份将最大限度地减少在还原数据库时回滚事务日志备份所需的时间。事务日志备份只能与完整恢

9、复模型和大容量日志记录恢复模型一起使用。在简单模型下,事务日志有可能被破坏,所以事务日志备份可能不连续,不连续的事务日志备份没有意义,因为基于日志的恢复要求日志是连续的。,通常在下列情况下备份系统数据库。(1)修改master数据库之后(2)修改msdb数据库之后(3)修改model数据库之后通常在下列情况下备份用户数据库。(1)创建数据库之后(2)创建索引之后(3)清理事务日志之后(4)执行大容量数据操作之后,另外,SQL Server的备份可以手工完成,也可以通过SQL Server Agent按照我们制订的备份计划,自动地完成各种备份完成。,13.3 数据库备份操作,备份设备的概念 备份

10、设备是SQL Server 2000用来存储数据库或事务日志备份副本的存储介质。创建备份时,必须选择存放备份数据的备份设备。备份设备有一个物理设备名和一个逻辑设备名。备份设备的类型(1)磁盘备份设备(2)磁带备份设备(3)命名管道备份设备,【任务描述】创建一个逻辑设备名为DISKBackup_StuScore、物理设备名为C:Program FilesMicrosoft SQL ServerMSSQLBACKUPDISKBackup_StuScore.bak的备份设备。【任务实现】(1)用企业管理器创建备份设备 启动企业管理器,展开相应的服务器组和服务器节点。展开“管理”节点,右击“备份”项,

11、选择快捷菜单中的【新建备份设备】命令,打开如图4-3所示的【备份设备属性-新设备】对话框,在【名称】文本框中输入需创建的备份设备的逻辑名称DISKBackup_StuScore。,任务1:创建和查看备份设备,【任务描述】使用企业管理器分别对StudentScore数据库进行完全备份、差异备份、事务日志备份及文件和文件组备份。【任务实现】(1)在企业管理器中进行完全数据库备份 在企业管理器中,展开“数据库”节点。用鼠标右击要备份的数据库StudentScore,选择快捷菜单中的【所有任务备份数据库】命令,打开如图4-8所示的【SQL Server备份】对话框。从备份对话框【常规】选项卡的【数据库

12、】下拉列表框中选择要备份的数据库,这里默认为刚才右击的数据库;在【名称】文本框内为备份输入一个便于识别的备份集名称,这里就用默认的“StudentScore 备份”;在【描述】文本框中为该备份输入一个描述性信息(可选),这里输入“第一次完全备份”。,任务2:执行数据库备份,在【备份】选项组内选择备份类型“数据库完全”,进行完整数据库备份。注意完整数据库备份是其它备份的基础。在【目的】区域下的列表框中显示出曾对该数据库进行备份时使用的备份设备或备份文件名。如果没出现备份设备,则单击【添加】按钮,打开如图4-9所示的【选择备份目的】对话框,可以添加备份设备或备份文件名。在备份对话框的【重写】选项组

13、中,单击【追加到媒体】单选钮,将备份追加到现有的备份设备上;单击【确定】按钮,系统将按前述设置进行备份。如果没有选择调度备份,则备份操作立即开始执行,备份完成后出现【数据库备份成功】消息框,单击【确定】按钮,即可完成数据库的完全备份。,使用T-SQL语句备份数据库BACKUP DATABASE database_name|database_name_var TO,.n WITH BLOCKSIZE=blocksize|blocksize_variable,DESCRIPTION=text|text_variable,DIFFERENTIAL,EXPIREDATE=date|date_var,P

14、ASSWORD=password|password_variable,FORMAT|NOFORMAT,INIT|NOINIT,【任务描述】创建教学库的差异数据库备份。【任务实现】BACKUP DATABASE 教学库 TO DISK=f:dataBACKUP教学库差异备份.Bak WITH DIFFERENTIAL,任务3:T-SQL备份,13.4 数据库还原操作,SQL Server提供了数据库的两种还原过程,自动还原过程和手动还原过程。自动还原自动还原是指SQL Serer数据库在每次出现错误或关机重启之后SQL Serer都会自动运行带有容错功能的特性。SQL Server用事务日志来完

15、成这项任务,它读取每个数据库事务日志的活动部分,并且检查所有自最新的检查点以来发生的事务。检查点就是最近一次从内存中把数据变化永久写入到数据库中的那个时间点,标识所有已经提交的事务并回滚它们,即把它们重新应用于数据库,然后标识所有未提交的事务并回滚,这样保证删除所有未完全写入数据库的未提交事务。这个过程保证了每个数据库逻辑上的一致性。,手动还原 手动还原数据库需要指定数据库还原工作的应用程序和接下来的按照创建顺序排列的事务日志的应用程序。完成这些之后,数据库就会处于和事务日志最后一次备份时一致的状态。如果使用完全数据库备份来还原,SQL Serer重新创建这些数据库文件和所有的数据库对象;如果

16、使用差异数据库备份来还原,则可以还原最近的差异数据库备份。,【任务描述】使用企业管理器对StudentScore数据库分别从完全数据库备份、差异备份、事务日志备份及文件和文件组备份中恢复数据。【任务实现】(1)从完全数据库备份中恢复数据 在企业管理器中,展开“数据库”节点。右击“数据库”节点,选择快捷菜单中的【所有任务还原数据库】命令,打开如图4-12所示【还原数据库】对话框。在【还原为数据库】下拉列表框中选择或输入要还原的目标数据库,这里为”StudentScore”。因前面对数据库进行完全数据库备份时使用了备份设备DISKBackup_StuScore,故还原时须使用从备份设备中还原。因此

17、,在“还原”选项组中选择【从设备】单选钮。在“参数”区域的【设备】列表框中列出了从哪些设备中还原数据,单击其后的【选择设备】按钮,打开如图4-13所示【选择还原设备】对话框。,任务1:用户数据库的恢复,单击【添加】按钮,出现如图4-14所示【选择还原目的】对话框。选择【备份设备】单选钮,并从【备份设备】下拉式列表框中选中“DISKBackup_StuScore”备份设备。单击【确定】按钮,这时设备名列表框中将出现备份设备DISKBackup_StuScore的物理文件名。单击【确定】按钮,返回【还原数据库】对话框,这时设备列表框中将出现备份设备DISKBackup_StuScore的物理文件名

18、。在经过上述操作过后的【还原数据库】对话框中,【备份号】输入框中默认为1,表示是该备份设备中的第一个备份集,单击“备份号”后的【查看内容】按钮,打开如图4-17所示的【选择备份】对话框。在图4-17的列表框中列出了该备份物理文件中存在的备份,并默认选中相应备份集前的复选框,因这里选择的“备份号”是1,故系统自动选中【数据库-完全】单选按钮,表示将从完整数据库备份中还原。单击【确定】按钮,系统根据上述设置的参数,进行完整数据库备份的恢复。,命令操作完全备份,备份Backup database pubs to disk=c:完全备份.bak恢复Restore database pubs from

19、disk=c:完全备份.bak,差异备份 命令操作,备份Backup database pubs to disk=c:差异备份.bak with differential 恢复步骤:完全恢复restore database pubs from disk=c:完全备份.bak with norecovery 差异恢复restore database pubs from disk=c:差异备份.bak with recovery,日志备份 命令操作,备份Backup log pubs to disk=c:日志备份.bak 恢复完全恢复restore database pubs from disk=

20、c:完全备份.bak with norecovery 差异恢复restore database pubs from disk=c:差异备份.bak with norecovery 日志恢复Restor log pubs from disk=c:日志备份.bak with recovery,系统数据库Master恢复,master数据库损坏,那么需要重建master数据库。在microsoft sql server80toolsbinn下运行rebuildm.exe,然后指定服务器名与数据文件目录,系统数据库Master恢复,master数据库没有损坏停止mssqlserver服务 切换到单用户模式下启动server服务。在命令模式下,运行sqlservr.exem-instancename,如果数据库使用的默认的实例名,那么就不用写实例名了。如果有实例名,那么实例名一定要写上,否则单用户启动模式启动不成功。在查询分析器中运行恢复数据库的语句,restore database master from disk=d:master.bak。在登陆查询分析器的时候,会提示登陆失败,在这里不用管这个错误即可,单击否即可。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号