资源预览内容
第1页 / 共31页
第2页 / 共31页
第3页 / 共31页
第4页 / 共31页
第5页 / 共31页
第6页 / 共31页
第7页 / 共31页
第8页 / 共31页
第9页 / 共31页
第10页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2019年5月24日,第1页,第7章数据备份还原,SQL Server 2005 数据库应用与开发教程 清华大学出版社,教学目标 教学重点 教学过程,2019年5月24日,第2页,教学目标,理解和掌握数据备份和还原的概念,特点 掌握如何在对象资源管理器中备份还原数据 掌握如何在对象资源管理器中分离和附加数据库,2019年5月24日,第3页,教学重点,掌握数据库的导入导出方法 理解数据库的备份策略 掌握如何创建备份 理解数据库的还原策略 掌握还原数据库的方法 掌握分离和附加数据库,2019年5月24日,第4页,教学过程,数据库的导入导出 数据库的备份与还原 自动化管理任务 分离和附加数据库,2019年5月24日,第5页,7.1数据库的导入导出,通过导入和导出操作可以在SQL Server2005和其他异类数据源(例如Excel或Oracle数据库)之间轻松移动数据。 “导出”是指将数据从SQL Server表复制到数据文件。 “导入”是指将数据从数据文件加载到SQL Server表。,2019年5月24日,第6页,7.1.1数据库的导出,在对象资源管理器中导出数据。具体步骤略,7.1.2数据库的导入,在对象资源管理器中导入数据。具体步骤略,2019年5月24日,第7页,7.2数据库的备份与还原,备份数据库是数据库管理员(DBA)的最重要的任务之一。在进制灾难性事故后,DBA可以使用备份文件恢复数据库,从而最大程度地减少损失。因此,良好的备份策略是保证数据库安全运行的保证,是每一个数据库管理员必须认真调查和仔细规划才能完成的任务。 SQL Server 2005指定了一个良好的备份还原策略,定期将数据库进行备份以保护数据库,以便在事故发生后还原数据库。,2019年5月24日,第8页,7.2.1数据库的备份,1. 备份概述 数据库备份可以创建备份完成时数据库内存在的数据的副本,这个副本能在遇到故障时恢复数据库 。 SQL Server备份数据库是动态的,在进行数据库备份时,SQL Server允许其他用户继续对数据库进行操作。 执行备份操作必须拥有对数据库备份的权限许可,SQL Server只允许系统管理员、数据库所有者和数据库备份执行者备份数据库。,2019年5月24日,第9页,SQL 提供了4种不同的备份方式:完整备份和完整差异备份、部分备份和部分差异备份、事务日志备份、数据库文件和文件组备份。 (1)完整备份和完整差异备份 完整备份是对所有数据库操作和事务日志中的事务进行备份。通常定期操作。 完整差异备份仅记录自上次完整备份后更改过的数据。备份较小且速度较快,便于进行教频繁的备份,2019年5月24日,第10页,(2) 部分备份和部分差异备份 所有恢复模式都支持这两种备份方式。 是Microsoft SQL Server 2005的新增功能 部分备份并不包含所有文件组,而只包含主文件组、每个读写文件组和任何指定文件中的所有数据。 只读数据库的部分备份仅包含主文件组 部分差异备份仅记录文件组中自上次部分备份后更改的数据,而且部分差异备份是与单个的基准部分备份一起使用 部分差异备份比部分备份更小而且更快,这样就可以经常备份来降低数据丢失的风险。,2019年5月24日,第11页,事务日志备份是对数据库发生的事务进行备份,包括从上次进行事务日志备份、差异备份和数据库完全备份之后所有已经完成的事务。 它仅对数据库事务日志进行备份,所以其需要的磁盘空间和备份时间都比数据库备份少得多 执行事务日志备份主要有两个原因:首先,要在一个安全的介质上存储自上次事务日志备份或数据库备份以来修改的数据;其次,要合适地关闭事务日志到它的活动部分的开始。,(3) 事务日志备份,2019年5月24日,第12页,(4) 数据库文件和文件组备份,当数据库非常庞大时,可以执行数据库文件或文件组备份,文件组包含了一个或多个数据库文件。当SQL Server系统备份文件或文件组时,指定需要备份的文件,最多指定16个文件或文件组。文件备份操作可以备份部分数据库,而不是整个数据库。,2019年5月24日,第13页,2. 创建备份设备 备份或还原操作中使用的磁带机或磁盘驱动器称为备份设备。 可以在服务器的本地磁盘上或共享网络资源的远程磁盘上定义磁盘备份设备。 若要通过网络备份到远程计算机上的磁盘,请使用通用命名约定(UNC)名称(格式为:)来指定文件的位置。 在将文件写入硬盘时,SQL Server的用户帐户必须具有读写远程磁盘上的文件所需的权限。,2019年5月24日,第14页,磁带备份设备的用法与磁盘设备相同,但必须注意以下两点: (1) 磁带设备必须物理连接到运行SQL Server的计算机上。不支持备份到远程磁带设备上。 (2) 如果磁带备份设备在备份操作过程中已满,但还需要写入一些数据,SQL Server将提示更换新磁带并继续备份操作。,2019年5月24日,第15页,备份标识:,物理备份设备是操作系统用来标识备份设备的名称 逻辑备份设备是用户定义的别名,用来标识物理备份设备 备份或还原数据库时,物理备份设备名称和逻辑备份设备名称可以互换使用。,2019年5月24日,第16页,创建备份设备:,使用SQL Server管理平台 即对象资源管理器中创建备份设备,具体步骤略。 使用系统存储过程创建备份设备 在SQL Server中,可以使用sp_addumpdevice语句创建备份设备,其语法形式如下: sp_addumpdevice device_type ,logical_name,physical_name,controller_type|device_status,2019年5月24日,第17页,删除备份设备:,使用SQL Server管理平台 即对象资源管理器中删除备份设备,具体步骤略。 使用sp_dropdevice语句来删除备份设备。其语法如下: sp_dropdevicelogical_name, delfile 其中,logical_name表示设备的逻辑名称,delfile指定是否删除物理备份文件。如果指定delfile则删除物理备份文件。,2019年5月24日,第18页,3.备份的执行,使用SQL Server管理平台进行备份,具体步骤略。 使用备份向导 1)模板资源管理器 2)展开backup,再双击backup database 。 在 “连接到数据库引擎”对话框中,填写连接信 息,单击“连接”按钮。打开一个新查询编辑器窗口。 3)按照Backup database的语法规则,书写数据库备份的SQL语句,完成后执行语句,即可完成数据库备份的操作。,2019年5月24日,第19页,Backup database database_name|database_name_var to ,n with ,format ,init|noinit ,restart :=backup_file_name|backup_file_evar|disk|tape =temp_file_name|temp_file_name_evar,2019年5月24日,第20页,7.2.2数据库的还原,数据库可以从备份文件中还原数据库 ,数据库还原是指将数据库备份加载到系统中的过程。 系统在还原数据库的过程中,自动执行安全性检查、重建数据库结构以及完成填写数据库内容。,2019年5月24日,第21页,还原数据库:,数据库的还原操作是静态的,必须限制用户对该数据库进行其他操作 ,设置数据库属性为single属性。 使用SQL Server管理平台还原数据库,具体操作略。 使用Transact-SQL语句还原数据库,2019年5月24日,第22页,restore database from with ,file=file_number ,move logical_file_name to operating_system_file_name ,replace ,norecovery|recovery|standby=undo_file_name :=backup_device_name|backup_device_name_evar |disk|tape|pipe =temp_backup_device|temp_backup_device_var,2019年5月24日,第23页,7.3自动化管理任务,SQL Server 2005提供了自动化管理任务的机制,很多具有重复性的工作可以交给SQL Server2005来自动完成。,7.3.1 多服务器管理,多服务器管理是在多个SQL Server实例间使管理自动化的过程。,2019年5月24日,第24页,多服务器管理包含至少一个主服务器和至少一个目标服务器。 主服务器向目标服务器分发作业,并从目标服务器接收事件。 目标服务器周期性地连接到主服务器,以更新它们要执行的作业的列表。,2019年5月24日,第25页,创建多服务器环境时,需考虑如下事项: 每个目标服务器只向一个主服务器报告。在将目标服务器登记到另一个主服务器上之前,必须使它同现有的主服务器脱离。 主服务器和目标服务器必须在Windows NT4.0或Window 2000操作系统中运行。 更改目标服务器的名称时,必须先与主服务器脱离,而且更改后要重新登记。 若要取消多服务器配置,必须使所有目标服务器脱离主服务器,2019年5月24日,第26页,7.3.2SQL Server 2005代理服务配置,SQL Server代理允许自动处理不同的管理任务,但是在这样做之前要保证必须启动SQL Server代理。,2019年5月24日,第27页,7.4分离和附加数据库,若数据库创建在C盘上,而C盘越来越满,需要将数据库移到另外的驱动器上,或者希望将数据库从一个较慢的服务器移到另一个更快的服务器上,通过对数据库进行分离和附加操作,可以很快的完成任务。,2019年5月24日,第28页,在进行分离和附加数据库操作时,首先要注意: (1)不能进行更新,不能运行任务,用户也不能连接在数据库上。 (2)在移动数据库之前,为数据库做一个完整的备份。 (3)确保数据库要移动的目标位置及将来数据增长能有足够的空间。 (4)分离数据库并没有将其从磁盘上将数据库文件从它们所在的位置上真正的删除。如果需要,可以对数据库的组成文件进行移动、复制或删除。,2019年5月24日,第29页,7.4.1分离和附加数据库的操作,1. 分离数据库的操作 2. 附加数据库的操作,2019年5月24日,第30页,7.4.2使用T-SQL进行分离和附加数据库操作,1. 分离数据库 分离数据库使用db_owner来完成,具体的语法格式如下: Sp_detach_db dbname= dbname , skipchecks= skipchecks , KeepFulltextIndexFile= KeepFulltextIndexFile,2019年5月24日,第31页,2. 附加数据库 附加数据库的语法格式如下: CREATE DATADASE database_name ON , n FOR ATTACH WITH | ATTACH_REBUILD_LOG ,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号