SQL Server 网络数据库管理项目教程课件12项目十二 数据库的备份和还原_第1页
SQL Server 网络数据库管理项目教程课件12项目十二 数据库的备份和还原_第2页
SQL Server 网络数据库管理项目教程课件12项目十二 数据库的备份和还原_第3页
SQL Server 网络数据库管理项目教程课件12项目十二 数据库的备份和还原_第4页
SQL Server 网络数据库管理项目教程课件12项目十二 数据库的备份和还原_第5页
已阅读5页,还剩26页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目十二

数据库的备份与还原

任务1:备份数据库

任务2:还原数据库任务1:数据库备份数据库备份数据库在使用过程中会遇到一些意外问题导致数据丢失,这时数据库备份是保证数据完整一个很好的手段,DBA(数据库管理员)应该养成良好的数据备份习惯。本任务中我们使用系统操作和命令2种方式完成数据备份。12.1.1相关知识备份数据库首先要设置数据库“恢复模式”,因为数据库如果恢复模式设置不正确,会导致数据无法还原。SQLServer2008数据库恢复模式分为三种:完整恢复模式、大容量日志恢复模式、简单恢复模式。相关知识1、完整恢复模式。为默认恢复模式。它会完整记录下操作数据库的每一个步骤。使用完整恢复模式可以将整个数据库恢复到一个特定的时间点,这个时间点可以是最近一次可用的备份、一个特定的日期和时间或标记的事务。2、大容量日志恢复模式。它是对完整恢复模式的补充。简单地说就是要对大容量操作进行最小日志记录,节省日志文件的空间(如导入数据、批量更新、SELECTINTO等操作时)。一般只有在需要进行大量数据操作时才将恢复模式改为大容量日志恢复模式。数据库备份相关知识3、简单恢复模式。在该模式下,数据库会自动把不活动的日志删除,因此简化了备份的还原,但因为没有事务日志备份,所以不能恢复到失败的时间点。通常,此模式只用于对数据库数据安全要求不太高的数据库。并且在该模式下,数据库只能做完整和差异备份。数据库备份相关知识了解了以上数据库还原模式后,备份数据库,SQLServer2008有四种备份方式:完整备份、差异备份、事务日志备份、文件和文件组备份。数据库备份相关知识1、完整备份:备份整个数据库的所有内容,包括事务日志。该备份类型需要比较大的存储空间来存储备份文件,备份时间也比较长,在还原数据时,也只要还原一个备份文件。2、差异备份:差异备份是完整备份的补充,只备份上次完整备份后更改的数据。相对于完整备份分来说,差异备份的数据量比完整数据备份小,备份的速度也比完整备份要快。因此,差异备份通常作为常用的备份方式。在还原数据时,要先还原前一次做的完整备份,然后还原最后一次所做的差异备份,这样才能让数据库里的数据恢复到与最后一次差异备份时的内容相同。数据库备份相关知识3、事务日志备份:事务日志备份只备份事务日志里的内容。事务日志记录了上一次完整备份或事务日志备份后数据库的所有变动过程。事务日志记录的是某一段时间内的数据库变动情况,因此在进行事务日志备份之前,必须要进行完整备份。与差异备份类似,事务日志备份生成的文件较小、占用时间较短,但是在还原数据时,除了先要还原完整备份之外,还要依次还原每个事务日志备份,而不是只还原最后一个事务日志备份(这是与差异备份的区别)。数据库备份相关知识4、文件和文件组备份。如果在创建数据库时,为数据库创建了多个数据库文件或文件组,可以使用该备份方式。使用文件和文件组备份方式可以只备份数据库中的某些文件,该备份方式在数据库文件非常庞大时十分有效,由于每次只备份一个或几个文件或文件组,可以分多次来备份数据库,避免大型数据库备份的时间过长。另外,由于文件和文件组备份只备份其中一个或多个数据文件,当数据库里的某个或某些文件损坏时,可能只还原损坏的文件或文件组备份。数据库备份相关知识除此之外,我们还可以使用SQL命令进行数据备份,语法如下:完整数据库备份语句格式:BACKUPDATABASE<数据库名字>TO<备份设备名>[MIRRORTO<备份设备名>][WITH [[,]NAME={backup_set_name}]指定备份集名称[[,]DESCRIPTION={'text'}]指定备份集的描述

[[,]DIFFERENTIAL]指定是否为完整差异备份

[[,]EXPIREDATE={date} |RETAINDAYS={days}][[,]{INIT|NOINIT}]指定是否覆盖媒体集中已有的备份集[[,]MEDIANAME={media_name}]指定媒体集名称[[,]MEDIADESCRIPTION={'text'}]指定媒体集描述]数据库备份相关知识事务日志备份语法格式:BACKUPLOG<数据库名字>TO<backup_device>[,...n][MIRRORTO<backup_device>][WITH

[[,]NAME={backup_set_name}][[,]DESCRIPTION={'text'}][[,]EXPIREDATE={date}|RETAINDAYS={days}][[,]{INIT|NOINIT}][[,]MEDIANAME={media_name}][[,]MEDIADESCRIPTION={'text'|@text_variable}][[,]NO_TRUNCATE]指定是否截断日志记录[[,]{NORECOVERY|STANDBY=undo_file_name}]]NORECOVERY:备份事务日志的尾部并使数据库处于RESTORING状态。使用STANDBY选项等同于BACKUPLOGWITHNORECOVERY后跟RESTOREWITHSTANDBY。数据库备份12.1.2任务实施步骤1:在“对象资源管理器”窗口里展开数据库,找到创建好的student,右击|属性,打开数据库属性窗口,如图12-1所示。在“选项”页面里数据库的恢复模式,这里默认设置为简单,选择后点击“确定”。1.系统操作方法图12-1数据库恢复模式设置数据库备份12.1.2任务实施步骤2:在“对象资源管理器”窗口里展开数据库,找到创建好的student,右击,如图12-1所示,右击选择“任务”|“备份”,打开如图12-2所示窗口。图12-2数据库备份数据库备份12.1.2任务实施步骤3:图12-3窗口中,在“源”一栏里,恢复模式默认为简单模式,备份类型选择为“完整”;备份集一栏里,名称默认也可以自己取名,过期时间可以选择晚于多少天过期,或者在某一天过期。图12-3备份类型设置数据库备份12.1.2任务实施步骤4:在目标一栏里,点击“添加”,设定备份的目标位置,如图12-4所示,选择在d:/programfiles/SQlserver2008/backup文件夹下,输入备份文件名为student20150910.bak,点击确定。图12-4选择数据备份目录数据库备份12.1.2任务实施步骤5:回到图12-3窗口,这时在目标一栏里出现了刚才输入的备份文件的路径和文件名,点击确定即可完成备份。与此类似,可以对数据库进行差异备份和事务日志备份。数据库备份12.1.2任务实施备份数据库student到.bak文件,然后利用此bak文件恢复一个新的数据库studentnewUsestudentBackdatabasestudentTodisk=’e:\sqlserver\backup\student20150910.bak’\*数据库备份文件*/RestorefilelistonlyFromdisk=’e:\sqlserver\backup\student20150910.bak’RestoredatabasestudentnewFromdisk=’e:\sqlserver\backup\student20150910.bak’ Withmove‘studentnew’to’e:\sqlserver\data\studentnew.mdf’,move‘studentnew_log’to’e:\sqlserver\data\studentnew_log.ldf’数据库备份2.命令方法12.1.2任务实施我们也可以通过数据维护计划来自动备份数据库,详细请课后自行学习。3.自动备份数据库数据库备份图12-5自动备份数据任务2:数据库还原数据库还原数据库还原又叫数据库恢复,是指将数据库恢复到备份的某个状态,本任务是将备份的student数据库进行还原操作。12.2.1相关知识恢复数据库的SQL语法格式如下:RESTOREDATABASE{database_name}[FROM<backup_device>[…n]][WITH

[[,]FILE={file_number}]

[[,]MEDIANAME={media_name}]

[[,]{RECOVERY|NORECOVERY|STANDBY=

{standby_file_name}]是否回滚未提交的事务

[[,]REPLACE]指定是否覆盖当前已经存在的数据库

[[,]{

STOPAT={date_time}|

STOPATMARK={'mark_name'[AFTERdatetime]}|STOPBEFOREMARK={'mark_name'[AFTERdatetime]}}]]数据库还原相关知识SQLServer要求在除最后的Restore语句外的所有其他还原语句上使用WithNoRecovery选项。使用该语句后,数据库将处于还原步骤中中间的未完成状态,此时如果想使用数据库,进行恢复数据库操作:RestoreDatabase<>WithRecovery,语法格式如下:RESTORELOG{database_name}FROM<backup_device>[,...n][WITH

[[,]FILE={file_number}]

[[,]MEDIANAME={media_name}]

[[,]{RECOVERY|NORECOVERY|STANDBY=

{standby_file_name|@standby_file_name_var}}

]

[[,]REPLACE]

[[,]{

STOPAT={date_time}|

STOPATMARK={'mark_name'[AFTERdatetime]}|

STOPBEFOREMARK={'mark_name'

[AFTERdatetime]}

}]]数据库还原12.2.2任务实施步骤1:选择要还原的数据库“student”,右击“任务”|“还原”|“还原数据库”,即打开“还原数据库”窗口,点击“选项”页面如图12-4所示。1.系统操作方法数据库还原图12-6数据库还原选项设置12.2.2任务实施步骤2:在图12-4窗口中对还原选项和恢复状态进行设置,也可以选择默认。步骤3:点击“常规”页面,出现如图12-5窗口,在备份集里出现了曾经备份的记录,选择要还原的一项,点击“确定”,即完成还原。数据库还原图12-6数据库还原12.2.2任务实施返回由备份集内包含的数据库和日志文件列表组成的结果集获得逻辑文件名UsestudentRestorestudent Fromdisk=’e:\sqlserver\backup\student.bak’ Withmove‘student20150910’to‘e:\sqlserver\data\student.mdf’, Move‘student20150910_log’to‘e:\sqlserver\data\student_log.ldf’,Stats=10,replaceGo数据库还原2.命令方式项目小结本章主要讲述了SQLServer2008备份和还原数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论