数据库原理与应用 第10章 备份与还原

上传人:E**** 文档编号:89472547 上传时间:2019-05-25 格式:PPT 页数:62 大小:339KB
返回 下载 相关 举报
数据库原理与应用 第10章  备份与还原_第1页
第1页 / 共62页
数据库原理与应用 第10章  备份与还原_第2页
第2页 / 共62页
数据库原理与应用 第10章  备份与还原_第3页
第3页 / 共62页
数据库原理与应用 第10章  备份与还原_第4页
第4页 / 共62页
数据库原理与应用 第10章  备份与还原_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《数据库原理与应用 第10章 备份与还原》由会员分享,可在线阅读,更多相关《数据库原理与应用 第10章 备份与还原(62页珍藏版)》请在金锄头文库上搜索。

1、第10章 备份与还原,【本章导读】,Microsoft SQL Server 2005提供了高性能的备份和还原功能。SQL Server 备份和还原组件提供了重要的保护手段,以保护存储在SQL Server数据库中的关键数据。实施计划妥善的备份和还原策略可保护数据库,避免由于各种故障造成的数据损坏或丢失。,【本章要点】,备份的相关概念 备份数据库 还原数据库,第10章 备份与还原,10.1 备份概述 10.2 备份数据库 10.3 还原数据库 本章小结 习题十,10.1 备份概述,10.1.1 备份的概念及恢复模式 10.1.2 备份类型 10.1.3 备份设备,10.1.1 备份的概念及恢复

2、模式,有多种故障可以导致数据库失效,这些故障包括: 媒体故障 用户错误(例如,误删除了某个表) 硬件故障(例如,磁盘驱动器损坏或服务器报废) 自然灾难,10.1.1 备份的概念及恢复模式,备份就是制作数据库结构、对象和数据的拷贝,以便在数据库遭到破坏时能够修复数据库。 恢复就是指将数据库备份加载到系统中修复数据库的过程。,10.1.1 备份的概念及恢复模式,备份和还原操作是在某种“恢复模式”下进行的。 恢复模式是一个数据库属性,它用于控制数据库备份和还原操作的基本行为。 SQL Server 2005提供了三种恢复模式: 简单模式、完整模式和大容量日志模式。,1简单恢复模式,此模式简略地记录大

3、多数事务,所记录的信息只是为了确保在系统崩溃或还原数据备份之后数据库的一致性。,1简单恢复模式,在下列情况下,可以使用简单恢复模式: (1)丢失日志中的一些数据无关紧要。 (2)无论何时还原主文件组,都希望始终还原读写辅助文件组(如果有)。 (3)是否备份事务日志无所谓,只需要完整差异备份。 (4)不在乎无法恢复到故障点以及丢失从上次备份到发生故障时之间的任何更新。,2完整恢复模式,此模式完整地记录了所有的事务,并保留所有的事务日志记录,直到对它们进行了备份为止。在 SQL Server企业版中,完整恢复模式能使数据库恢复到故障时间点(假定在故障发生之后备份了日志尾部)。,2完整恢复模式,如果

4、符合下列任何要求,则可以使用完整恢复模式: (1)必须能够恢复所有数据。 (2)数据库包含多个文件组,并且希望逐段还原读写辅助文件组(以及只读文件组)。 (3)必须能够恢复到故障点。 (4)希望能够还原单个页。,3大容量日志恢复模式,此模式简略地记录大多数大容量操作(例如,索引创建和大容量加载),完整地记录其他事务。大容量日志恢复模式提高大容量操作的性能,常用作完整恢复模式的补充。,查看和修改恢复模式,可以使用SQL Server Management Studio来查看和修改数据库的恢复模式。 打开SQL Server Management Studio,在“对象资源管理器”中,展开“数据库

5、”,右键点击要查看的数据库,如Study。在出现的快捷菜单中,选择“属性”,打开“数据库属性”对话框。,图10-1 查看和修改数据库属性,10.1.2 备份类型,完整备份和完整差异备份。 完整备份和完整差异备份易于使用并且适用于所有数据库,与恢复模式无关。 完整备份包含数据库中的所有数据,并且可以用作完整差异备份所基于的“基准备份”。 完整差异备份仅记录自前一完整备份后发生更改的数据扩展盘区数。因此,与完整备份相比,完整差异备份较小且速度较快,便于进行较频繁的备份,同时降低了丢失数据的风险。,10.1.2 备份类型,部分备份和部分差异备份。 部分备份与完整备份相似,但部分备份并不包含所有文件组

6、。部分备份包含主文件组、每个读写文件组以及任何指定的只读文件中的所有数据。只读数据库的部分备份仅包含主文件组。 部分差异备份仅与部分备份一起使用。部分差异备份仅包含在备份时主文件组和读写文件组中更改的那些区。如果部分备份捕获的数据只有一部分已更改,则使用部分差异备份可以使数据库管理员更快地创建更小的备份。,10.1.2 备份类型,文件、文件组完整备份和文件差异备份。此类型仅适用于包含多个文件组的数据库。 完整文件备份将备份一个或多个完整的文件。完整的文件备份相当于完整备份。 文件差异备份的前提是已经进行完整文件备份。文件差异备份只捕获自上一次文件备份以来更改的数据。,10.1.2 备份类型,事

7、务日志备份。 使用事务日志备份,可以将数据库恢复到故障点或特定的时间点。 在完整恢复模式和大容量日志恢复模式下,执行常规事务日志备份对于恢复数据库至关重要。一般情况下,事务日志备份比完整备份使用的资源少。因此,可以比完整备份更频繁地创建事务日志备份,减少数据丢失的风险。,10.1.3 备份设备,备份或还原操作中使用的磁带机或磁盘驱动器称为“备份设备”。 在创建备份时,必须选择要将数据写入的备份设备。Microsoft SQL Server 2005可以将数据库、事务日志和文件备份到磁盘和磁带设备上。,1磁盘设备,磁盘备份设备是硬盘或其他磁盘存储媒体上的文件,与常规操作系统文件一样。 可以在服务

8、器的本地磁盘上或共享网络资源的远程磁盘上定义磁盘备份设备。 磁盘备份设备根据需要而定,最大文件大小可以相当于磁盘上可用磁盘空间。 备份与数据库应尽量不在一个磁盘上。,2磁带设备,磁带设备必须物理连接到运行 SQL Server 实例的计算机上,不支持备份到远程磁带设备上。 如果磁带备份设备在备份操作过程中已满,但还需要写入一些数据,SQL Server 将提示更换新磁带并继续备份操作。 若要将SQL Server数据备份到磁带,请使用磁带备份设备或 Microsoft Windows 平台支持的磁带驱动器。另外,对于特殊的磁带驱动器,请仅使用驱动器制造商推荐的磁带。,3物理设备名称和逻辑设备名

9、称,物理设备名称是操作系统用来标识备份设备的名称,它标识了备份设备的物理存储路径和文件名。 逻辑设备名称是用来标识物理备份设备的别名或公用名称。逻辑设备名称永久地存储在 SQL Server 内的系统表中。使用逻辑设备名称的优点是引用它比引用物理设备名称简单。 备份或还原数据库时,可以交替使用物理或逻辑设备名称。,10.2 备份数据库,10.2.1 创建磁盘备份设备 10.2.2 使用SQL Server Management Studio 进行数据库备份 10.2.3 使用T-SQL语句创建数据库备份,10.2.1 创建磁盘备份设备,创建磁盘备份设备可以将一个备份设备添加到 sys.back

10、up_devices 目录视图中。 然后便可以在BACKUP和RESTORE语句中逻辑引用该设备。创建一个逻辑备份设备可简化BACKUP和RESTORE语句,在这种情况下指定设备名称将代替使用“TAPE =“或“DISK =“子句指定设备路径。,10.2.1 创建磁盘备份设备,使用SQL Server Management Studio创建磁盘备份设备 使用T-SQL语句创建磁盘备份设备,使用T-SQL语句创建磁盘备份设备,sp_addumpdevice devtype = device_type , logicalname = logical_name , physicalname = ph

11、ysical_name , cntrltype = controller_type | devstatus = device_status ,备份设备的类型。 可以取 Disk Tape,逻辑设备名称,逻辑设备名称,10.2.2 使用SQL Server Management Studio进行数据库备份,参见录像文件,10.2.3 使用T-SQL语句 创建数据库备份,BACKUP DATABASE database_name TO backup_device ,.n WITH with_options ,.o ; With选项:init skip和init format,创建完整备份,【例10

12、-2】把整个Study数据库备份到磁盘上,并使用FORMAT创建一个新的媒体集。 use Study go -可以用name选项指定备份集的名称: backup database Study to disk = C:MSSQLBACKUPStudy.Bak with format, name = Full Backup of Study,-也可以创建一个逻辑备份设备对应该备份文件: use Study go exec sp_addumpdevice disk, Study_Backup, C:MSSQLBACKUPStudy.Bak,-如果已经有备份设备,如上节中创建的mydiskdump,

13、-则可以在备份时使用其逻辑名称直接指定: use Study go backup database Study to mydiskdump with format, name = Full Backup of Study,创建差异数据库备份,创建差异数据库备份前,必须已经完整备份了数据库。执行 BACKUP DATABASE 语句创建差异数据库备份 。 需要同时指定:要备份的数据库的名称、写入完整数据库备份的备份设备和DIFFERENTIAL 子句。 DIFFERENTIAL 子句用于指定仅备份自上次创建完整数据库备份之后已更改的数据库部分。,创建差异数据库备份,【例10-3】为 Study数

14、据库创建完整数据库备份和差异数据库备份。 - 首先创建一个完整数据库备份,使用上面创建的备份设备mydiskdump use Study go backup database Study to mydiskdump with init go,backup database Study to mydiskdump with differential go,创建文件和文件组备份,BACKUP DATABASE database_name FILE = logical_file_name | FILEGROUP = logical_filegroup_name ,.f TO backup_devic

15、e ,.n WITH with_options ,.o ;,创建文件和文件组备份,【例10-4】为第5章例5-2中创建的KEJI_DB数据库的两个文件KEJI_DB_Data1和KEJI_DB_Data2创建文件备份。 use KEJI_DB go backup database KEJI_DB file= KEJI_DB_Data1, file= KEJI_DB _Data2 to disk=G:SQL Server Backups KEJI KEJI_FILE.bak go,创建文件和文件组备份,【例10-5】为KEJI_DB数据库的辅助文件组Fgroup中的文件创建完整文件备份。 bac

16、kup database KEJI_DB filegroup=Fgroup to disk=G:SQL Server BackupsKEJIKEJI_FILEGROUP.bak go,创建文件和文件组备份,【例10-6】为KEJI_DB数据库的辅助文件组Fgroup中的文件创建差异文件备份。 use KEJI_DB go backup database KEJI_DB filegroup=Fgroup to disk=G:SQL Server BackupsKEJIKEJI_FILEGROUP.bak with differential go,事务日志备份,执行 BACKUP LOG 语句可以备份事务日志,在此语句中需要指定要备份的事务日志所属的数据库的名称和写入事务日志备份的备份设备。同时,还可以指定INIT 子句、SK

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

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

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