第12章数据库备份和恢复_第1页
第12章数据库备份和恢复_第2页
第12章数据库备份和恢复_第3页
第12章数据库备份和恢复_第4页
第12章数据库备份和恢复_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、第12章 数据库的备份和恢复 第第1 12章章 数据库的备份和恢复数据库的备份和恢复 学习要点:学习要点:备份的概念 备份的类型 数据库备份的方法 恢复数据库的方法 第12章 数据库的备份和恢复 第第1 12章章 数据库的备份和恢复数据库的备份和恢复12.1备份概述备份概述 12.2备份操作备份操作 12.3恢复操作恢复操作 12.4恢复数据库的其他方法恢复数据库的其他方法 12.5数据的导入和导出数据的导入和导出 第12章 数据库的备份和恢复 12.1备份概述备份概述12.1.112.1.1为什么以及何时备份为什么以及何时备份 备份是指数据库管理员定期或不定期地将数据库部分或全部内容复制到磁

2、带或磁盘上保存起来的过程。当数据库遭到破坏时,可以利用备份进行数据库的恢复。备份的目的就是当数据库发生意外时,尽可能的减少数据的丢失。 何时进行备份,取决于所能承受数据损失的大小。执行备份操作必须拥有数据库备份的权限。 第12章 数据库的备份和恢复 12.1.2备份类型备份类型 sql server 2000支持的备份类型有四种支持的备份类型有四种 :完全数据库备份差异备份 事务日志备份 文件和文件组备份 第12章 数据库的备份和恢复 1完全数据库备份完全数据库备份 完全数据库备份是指备份数据库中当前所有的数据包括事务日志。与事务日志备份和差异备份相比,完全数据库备份使用的存储空间多,完成备份

3、操作需要的时间长,所以完全数据库备份的创建频率通常比差异备份或事务日志备份低。完全数据库备份适用备份容量较小、或数据库中数据的修改较少的数据库。 第12章 数据库的备份和恢复 2差异备份差异备份 差异备份是指备份自上次完全数据库备份以来更改的数据。差异备份比完全数据库备份小而且备份速度快,因此可以经常地备份,经常备份将减少丢失数据的危险。差异备份适合于修改频繁的数据库。3事务日志备份事务日志备份 事务日志备份是指备份自上次备份以来数据变化的过程,即事务日志文件的信息。其中的上次备份可以是完全数据库备份、差异备份或事务日志备份。可以使用事务日志备份将数据库恢复到特定的即时点(如输入多余数据前的那

4、一点)或恢复到故障点。 第12章 数据库的备份和恢复 4文件和文件组备份文件和文件组备份 文件和文件组备份适合于特大型数据库,因为一个很大的数据库要进行完全数据库备份需要很长的时间,那么可以将数据库的文件和文件组分别进行备份。 第12章 数据库的备份和恢复 备份后如果数据库发生了意外,一般应遵循如下的步骤备份后如果数据库发生了意外,一般应遵循如下的步骤来进行恢复:来进行恢复:(1 1)如果当前日志没有损坏,首先备份事务日志;)如果当前日志没有损坏,首先备份事务日志;(2 2)恢复最近的完全数据库备份;)恢复最近的完全数据库备份;(3 3)恢复最近的差异备份(如果进行过差异备份);)恢复最近的差

5、异备份(如果进行过差异备份);(4 4)依次恢复自差异备份以后的所有事务日志备份)依次恢复自差异备份以后的所有事务日志备份 (按备份的先后顺序恢复)。(按备份的先后顺序恢复)。第12章 数据库的备份和恢复 12.1.3恢复模型恢复模型 sql server 2000 提供了三种恢复模型,以确定如何备份数据以及能承受何种程度的数据丢失。简单恢复简单恢复完全恢复完全恢复 大容量日志记录恢复大容量日志记录恢复 第12章 数据库的备份和恢复 1 1简单恢复简单恢复 使用简单恢复模型可以将数据库恢复到最后一次备份的时刻的 状态。不过,无法将数据库还原到故障点或特定的即时点。在简单恢复的模型下只能进行完全

6、数据库备份和差异备份。 2 2完全恢复完全恢复 完全恢复提供将数据库恢复到故障点或特定即时点的能力。在完全恢复模型下能进行各种备份。3 3大容量日志记录恢复大容量日志记录恢复允许大容量日志记录操作,对某些大规模或大容量复制操作提供最佳性能和最少的日志使用空间。在大容量日志记录恢复模型下能进行数据库备份、差异备份和事务日志备份。 第12章 数据库的备份和恢复 12.1.4备份设备备份设备 创建备份时,必须选择存放备份数据的备份设备,即存放备份的存储介质。备份设备可以是磁盘、磁带、命名管道。当建立一个备份设备是要分配一个逻辑名和一个物理名。 1使用企业管理器创建备份设备使用企业管理器创建备份设备

7、。(1)打开“企业管理器”,展开服务器组,然后展开服务器。(2)展开“管理”文件夹,右击“备份”,然后单击“新建备份设备”命令,弹出“备份设备属性”对话框,如图12-1 所示。第12章 数据库的备份和恢复 图12-1备份设备属性对话框 第12章 数据库的备份和恢复 (3)在“名称”框中输入该备份设备的名称。(4)单击“文件名”,输入备份设备的物理文件名或 单击浏览(“.”)按钮显示“备份设备位置”对 话框,再选择备份设备所使用的物理文件。 (5)单击“确定”按钮完成创建备份设备操作。 第12章 数据库的备份和恢复 2使用系统存储过程sp_addumpdevicesp_addumpdevice创

8、建备份设备 sp_addumpdevice device_type , logical_name , physical_namev device_type 是指备份设备类型, 磁盘:disk; 磁带:tape; 命名管道:pipe。例12-1 下面的示例添加一个名为 sales_backup 的磁盘备份设备,其物理名称为d:sales_backup.bak。exec sp_addumpdevice disk, sales_backup, exec sp_addumpdevice disk, sales_backup, d:sales_backup.bakd:sales_backup.bak第1

9、2章 数据库的备份和恢复 可以使用系统存储过程sp_dropdevicesp_dropdevice删除备份设备。例12-2 下面的示例删除上例创建的备份设备。exec sp_dropdevice sales_backupexec sp_dropdevice sales_backup第12章 数据库的备份和恢复 12.2备份操作备份操作 12.2.1使用企业管理器备份数据库使用企业管理器备份数据库 (1)打开“企业管理器”,展开服务器组,然后展开服务器。(2)展开“数据库”文件夹,右击需要的数据库,选择“所有任务”子菜单,然后单击“备份数据库”,打开“sql server 备份”对话框,如图12

10、-2 所示。 第12章 数据库的备份和恢复 图12-2sql server备份对话框 第12章 数据库的备份和恢复 (3)在“名称”框内,输入备份名称。在“描述”框中输入对备份集的描述。也可以不填写描述框。(4)在“备份”选项下单击“数据库完全”。或者选择其他的备份类型。(5)在“目的”选项下,指定备份存放的位置。单击“添加”可以添加备份文件或备份设备,如图12-3 所示。(6)在“重写”选项下,单击“追加到媒体”,将备份追加到当前备份设备的内容之后;单击“重写现有媒体”,将重写备份设备中备份内容,即原来的内容被覆盖。 (7)选择“调度”复选框确定备份操作执行的时间,也可以直接单击“确定”按钮

11、,立即执行备份操作。第12章 数据库的备份和恢复 图12-3选择备份目的对话框第12章 数据库的备份和恢复 12.2.2使用使用transact-sql 语句备份数据库语句备份数据库 语法形式如下:语法形式如下: backup database database_name to backup_device with init | noinit , differential v init:选项表示重写备份集的数据。v noinit:选项表示备份数据将追加在原有的内容之后,noinit是 默 认设置。v differential:选项表示差异备份。第12章 数据库的备份和恢复 例例12-3 下例为

12、下例为 sales数据库创建一个完全数据库备份和数据库创建一个完全数据库备份和一个差异数据库备份。一个差异数据库备份。backup database salesto sales_backupwith initgobackup database salesto sales_backupwith differentialgo第12章 数据库的备份和恢复 使用使用backup logbackup log命令可以对数据库进行事务日志备份命令可以对数据库进行事务日志备份语法形式如下:语法形式如下:backup log database_name to backup_devicebackup log da

13、tabase_name to backup_device例例12-4 12-4 下例为下例为salessales数据库创建一个事务日志备份。数据库创建一个事务日志备份。backup log sales to sales_backupbackup log sales to sales_backup第12章 数据库的备份和恢复 12.3恢复操作恢复操作 恢复数据库是加载备份并应用事务日志重建数据库的过程。在数据库的恢复过程中,用户不能进入数据库,即数据库是不能使用的。一般而言,总是设置该数据库中“单用户”选项为真来限制用户访问要恢复的数据库。 sql server中进行数据库恢复,可以使用企业管理

14、器和transact-sql 语句。第12章 数据库的备份和恢复 12.3.1使用企业管理器恢复数据库使用企业管理器恢复数据库(1)打开“企业管理器”,展开服务器组,然后展开服务器。(2)展开“数据库”文件夹,右击数据库,指向“所有任务”子菜单,然后单击“还 原数据库”命令。弹出“还原数据库”对话框,如图12-4 所示。 (3)在“还原为数据库”框中,如果要还原的数据库名称与显示的默认数据库名称不同,请在其中进行输入或选择。若要用新名称还原数据库,请输入新的数据库名称。第12章 数据库的备份和恢复 (4)单击“数据库”,在“要还原的第一个备份”列表中,选择要还原的备份集。如果要将一个服务器上的

15、数据库备份恢复到另一个服务器上,应选择“从设备”还原。(5)在“还原”列表中,单击要还原的数据库备份。(6)单击“选项”选项卡,根据需要进行各选项的设置,如图12-5 所示。 (7)单击“确定”按钮开始恢复数据库。 第12章 数据库的备份和恢复 图12-4还原数据库对话框 第12章 数据库的备份和恢复 图12-5还原数据库对话框“选项”选项卡第12章 数据库的备份和恢复 12.3.212.3.2使用使用transact-sql transact-sql 语句恢复数据库语句恢复数据库语法形式如下:语法形式如下: restore database database_name from backup

16、_device with file = file_number , norecovery | recovery | standby= undo_file_name 第12章 数据库的备份和恢复 其中:其中: file = file_number:标识要还原的备份集。例如,file_number 为 1 表示备份媒体上的第一个备份集,file_number 为 2 表示第二个备份集。 norecovery:表示还原操作不回滚任何未提交的事务。如果需要恢复另一个事务日志,则必须指定 norecovery 或 standby 选项。如果 norecovery、recovery 和 standby 均

17、未指定,则默认为 recovery。当还原数据库备份和多个事务日志时,或在需要多个 restore 语句时(例如在完整数据库备份后进行差异数据库备份),sql server 要求在除最后的 restore 语句外的所有其它语句上使用 with norecovery 选项。 recovery:表示还原操作回滚任何未提交的事务。在恢复后即可使用数据库。只有在最后一步恢复是使用。第12章 数据库的备份和恢复 例例12-4:从:从 sales_backup备份设备中还原完全数据库备份备份设备中还原完全数据库备份后还原差异备份。后还原差异备份。restore database salesfrom sal

18、es_backupwith norecovery restore database salesfrom sales_buckupwith file = 2第12章 数据库的备份和恢复 12.4恢复数据库的其他方法恢复数据库的其他方法 12.4.1数据库的脱机和联机数据库的脱机和联机 具体操作步骤如下:(1)打开“企业管理器”,展开服务器组,然后展开服务器。(2)展开“数据库”文件夹,右击pubs数据库,指向“所有任务”子菜单,然后单击“脱机”命令。(3)在pubs数据库旁出现“脱机”两字,操作完成。这时可以对pubs 的数据库文件进行复制。脱机的数据库要恢复使用,则使用联机操作。第12章 数据

19、库的备份和恢复 12.4.2分离和附加数据库分离和附加数据库 sql server 2000 允许分离数据库的数据文件和事务日志文件,然后将其重新附加到另一台服务器,甚至同一台服务器上 。如果想将数据库从一台计算机移到另一台计算机或者从一个物理磁盘移到另一物理磁盘上,则分离和附加数据库很有用:一般是先分离数据库;然后将数据库文件移到另一服务器或磁盘;最后通过指定移动文件的新位置附加数据库。当附加在数据库时,必须指定主数据文件的名称和物理位置。 第12章 数据库的备份和恢复 12.5数据的导入和导出数据的导入和导出 在实际工作中我们的数据可能存储在excel、access、sybase、orac

20、le等数据库中,用户有时需要在sql server中利用这些数据,这就需要一种工具能够将数据转换到sql server中。sql server提供了一种很容易的把数据从一个sql server数据库或非sql server数据库 传输到一个sql server数据库的方法,这就是使用数据传输服务(data transformation services ,dts)。通过dts用户可以进行不同数据源之间数据的导入、导出和转换。 第12章 数据库的备份和恢复 12.5.1数据的导入数据的导入 例12-6 将excel 表中的数据导入sql server中的mydb数据库中。具体操作步骤如下:(1)打开“企业管理器”,展开服务器组,然后展开服务器。(2)右击“数据库”,选择“所有任务”中的“导入数据”,弹出“数据转换服务导入/导出向导”。(3)单击“下一步”,出现“选择数据源”对话框,在“数据源” 下拉列表框中选择“microsoft excel 97-2000”,如图12-9所示对话框。在“文件名”框中选择需要导入的文件的路径和文件名。第1

温馨提示

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

评论

0/150

提交评论