《数据库的备份和恢复.pptx》由会员分享,可在线阅读,更多相关《数据库的备份和恢复.pptx(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、根据根据数据库备份数据库备份的基本方法,备份图书管理数据库的基本方法,备份图书管理数据库MBOOK需要需要:首先创建一个备份设备首先创建一个备份设备,逻辑名为,逻辑名为“图书管理数据库备份图书管理数据库备份”;然后然后将将MBOOK数据备份到该备份设备数据备份到该备份设备上,可以通过上,可以通过界面方式和命令方式界面方式和命令方式来完成。来完成。第1页/共50页C1创建备份设备创建备份设备“图书管理数据库备份图书管理数据库备份”启动启动“SQLServerManagementStudio”,在,在“对象资源管理器对象资源管理器”中展中展开开“服务器对象服务器对象”,用鼠标右键单击,用鼠标右键单
2、击“备份设备备份设备”,在弹出的快捷菜单,在弹出的快捷菜单中选择中选择“新建备份设备新建备份设备”菜单项。菜单项。在打开的在打开的“备份设备备份设备”窗口中,在设备名称选项中输入备份设备的窗口中,在设备名称选项中输入备份设备的名称名称“图书管理数据库备份图书管理数据库备份”,“文件文件”选项中是备份设备的完整的物选项中是备份设备的完整的物理路径名,这里按照默认设置,单击理路径名,这里按照默认设置,单击“确定确定”按钮,完成备份设备的创按钮,完成备份设备的创建。建。备份设备创建完成后可以在备份设备创建完成后可以在“对象资源管理器对象资源管理器”的的“服务器对象服务器对象”下下“备份设备备份设备”
3、目录中找到刚创建的备份设备目录中找到刚创建的备份设备“图书管理数据库备份图书管理数据库备份”。第2页/共50页C2备份备份MBOOK数据库到备份设备数据库到备份设备“图书管理数据库备份图书管理数据库备份”中中(1)在)在“对象资源管理器对象资源管理器”中选择中选择“管理管理”,用鼠标右键单击,如图,用鼠标右键单击,如图9.1所所示,在弹出的快捷菜单上选择示,在弹出的快捷菜单上选择“备份备份”菜单项。菜单项。图9.1 选择“备份”菜单项第3页/共50页(2)在打开的)在打开的“备份数据库备份数据库”对话框(如图对话框(如图9.2所示)中选择要备份的数据所示)中选择要备份的数据库库MBOOK;在;
4、在“备份类型备份类型”栏选择备份的类型,有栏选择备份的类型,有3种类型:种类型:完整、差异和事务完整、差异和事务日志日志,这里选择,这里选择“完整完整”备份;在备份;在“备份组件备份组件”栏选择栏选择“数据库数据库”;在选定了要;在选定了要备份的数据库之后,可以在备份的数据库之后,可以在“名称名称”栏填写备份集的名称,在栏填写备份集的名称,在“说明说明”栏填写备栏填写备份的描述,这里按照默认设置;若系统未安装磁带机,则介质类型默认为磁盘,份的描述,这里按照默认设置;若系统未安装磁带机,则介质类型默认为磁盘,所以所以“备份到备份到”不必选择不必选择。图9.2“备份数据库”对话框第4页/共50页(
5、3)选择“目标”栏中的设备,单击“删除”按钮将所有的设备删除。接着单击“添加”按钮,在“选择备份目标”对话框中选择“备份设备”单选按钮。在下拉框中选择需要备份数据库到的目标备份设备“图书管理数据库备份”,如图9.3所示,单击“确定”按钮返回“备份数据库”窗口,单击“确定”按钮开始备份,当弹出提示备份成功的对话框后表示备份工作已经完成。图9.3 “选择备份目标”对话框第5页/共50页使用命令方式备份图书管理数据库,可以创建一个存储过程使用命令方式备份图书管理数据库,可以创建一个存储过程DB_backup,在存,在存储过程中包含备份储过程中包含备份MBOOK数据库的命令,要备份数据库时执行存储过程
6、即可。数据库的命令,要备份数据库时执行存储过程即可。创建存储过程创建存储过程DB_backup的语句如下:的语句如下:USEMBOOKGOCREATEPROCEDUREDB_backuppathvarchar(100)ASBACKUPDATABASEMBOOKTODISK=pathWITHINIT说明:以上存储过程的作用是将说明:以上存储过程的作用是将MBOOK数据库备份到一个物理备份设备中,数据库备份到一个物理备份设备中,如果需要使用逻辑备份设备备份,可以先使用如果需要使用逻辑备份设备备份,可以先使用系统存储过程系统存储过程sp_addumpdevice创建创建。在存储过程中备份操作使用了在
7、存储过程中备份操作使用了BACKUP语句语句,DATABASE表示备份整个数据库,表示备份整个数据库,MBOOK为要备份的数据库,为要备份的数据库,TO关键字指定备份存放的目标,关键字指定备份存放的目标,DISK表示磁盘设备,表示磁盘设备,存储过程使用参数存储过程使用参数path用于传递备份设备的物理名称,即文件的完整路径名。用于传递备份设备的物理名称,即文件的完整路径名。WITHINIT选项表示新的备份将覆盖原有的备份。选项表示新的备份将覆盖原有的备份。第6页/共50页功能测试:在D盘根目录下创建一个data文件夹,将MBOOK数据库备份为data文件夹下的“图书管理数据库备份.bak”文件
8、,使用如下语句:USE MBOOKGOEXEC DB_backup D:data图书管理数据库备份.bak执行结果如图9.4所示。图9.4 备份MBOOK数据库第7页/共50页C2图书管理数据库的恢复图书管理数据库的恢复根据根据数据库恢复的基本概念数据库恢复的基本概念,需要将被破坏后的数据库和恢复后的数据做一,需要将被破坏后的数据库和恢复后的数据做一个比较,才能确定数据库恢复是否成功。个比较,才能确定数据库恢复是否成功。本节分别通过界面方式和命令方式先删除读者信息表本节分别通过界面方式和命令方式先删除读者信息表TReader中借书证号为中借书证号为081107读者的信息(读者的信息(08110
9、7读者在借阅表读者在借阅表TLend中没有借书记录,可以删除),中没有借书记录,可以删除),然后通过备份设备恢复图书管理数据库,查看是否能够恢复成功。然后通过备份设备恢复图书管理数据库,查看是否能够恢复成功。第8页/共50页打开打开“SQLServerManagementStudio”,用鼠标右键单击,用鼠标右键单击“MBOOK”数据库的数据库的表表TReader,选择,选择“编辑前编辑前200行行”菜单项,选择借书证号为菜单项,选择借书证号为081107的读者所在的的读者所在的一行数据,用鼠标右键单击,选择一行数据,用鼠标右键单击,选择“删除删除”菜单项将该行数据删除。菜单项将该行数据删除。
10、接下来通过在接下来通过在9.1.1节中创建的逻辑备份设备节中创建的逻辑备份设备“图书管理数据库备份图书管理数据库备份”恢复图恢复图书管理数据库到未删除数据的状态,实现步骤如下:书管理数据库到未删除数据的状态,实现步骤如下:(1)在)在“对象资源管理器对象资源管理器”窗口中用鼠标右键单击窗口中用鼠标右键单击“数据库数据库”目录,选择目录,选择“还原数据库还原数据库”菜单项。菜单项。说明:如果要恢复特定的文件或文件组,可以选择说明:如果要恢复特定的文件或文件组,可以选择“文件或文件组文件或文件组”菜单项,菜单项,之后的操作与还原数据库类似。之后的操作与还原数据库类似。第9页/共50页(2)进入)进
11、入“还原数据库还原数据库”窗口,在窗口,在“目标数据库目标数据库”栏选择要恢复的数据库栏选择要恢复的数据库MBOOK,选中,选中“源设备源设备”单选按钮,如图单选按钮,如图9.5所示,单击所示,单击“源设备源设备”后面的后面的“”按钮,在打开的按钮,在打开的“指定备份指定备份”窗口中选择备份媒体为窗口中选择备份媒体为“备份设备备份设备”,单击,单击“添添加加”按钮。按钮。图9.5 还原数据库窗口第10页/共50页在打开的“选择备份设备”对话框中,在“备份设备”栏的下拉菜单中选择需要指定恢复的备份设备“图书管理数据库备份”,如图9.6所示,单击“确定”按钮,返回“指定备份”窗口,再单击“确定”按
12、钮,返回“还原数据库-MBOOK”窗口。图9.6 选择备份设备对话框第11页/共50页(3)选择完备份设备后,“还原数据库-BOOK”窗口的“选择用于还原的备份集”栏中会列出可以进行还原的备份集,在复选框中选中备份集,如图9.7所示。图9.7 选择备份集第12页/共50页(4)在如图9.7所示窗口中单击左边的“选项”选项卡,勾选“覆盖现有数据库”项,如图9.8所示,单击“确定”按钮,系统将进行恢复并显示恢复进度。图9.8 覆盖现有数据库第13页/共50页新建一个查询窗口,首先使用新建一个查询窗口,首先使用DELETE语句删除借书证号为语句删除借书证号为081107读者的信息:读者的信息:USE
13、MBOOKGODELETEFROMTReaderWHERE借书证号借书证号=081107SELECT*FROMTReaderWHERE借书证号借书证号=081107以上语句执行结果如下所示:以上语句执行结果如下所示:第14页/共50页接着,需要使用接着,需要使用D盘盘data目录下的物理备份设备目录下的物理备份设备“图书管理数据库备份图书管理数据库备份.bak”文件恢复文件恢复MBOOK数据库:数据库:USEmasterGORESTOREDATABASEMBOOKFROMDISK=D:data图书管理数据库备份图书管理数据库备份.bakWITHFILE=1,REPLACE执行结果如图执行结果如
14、图9.9所示。所示。图9.9 恢复MBOOK数据库第15页/共50页说明:恢复数据库时要保证恢复的数据必须不在使用,所以这里在系统数据说明:恢复数据库时要保证恢复的数据必须不在使用,所以这里在系统数据库库master下进行恢复操作,在恢复操作时使用下进行恢复操作,在恢复操作时使用RESTORE语句语句,DATABASE表示恢复表示恢复数据库,数据库,FROM关键字后面指定备份设备,如果是逻辑备份设备只指定逻辑名即关键字后面指定备份设备,如果是逻辑备份设备只指定逻辑名即可,这里选择通过物理备份设备恢复可,这里选择通过物理备份设备恢复MBOOK数据库。数据库。WITH子句后面指定的子句后面指定的F
15、ILE选选项标识要还原的备份集,为项标识要还原的备份集,为1指示备份媒体中的第一个备份集指示备份媒体中的第一个备份集。REPLACE选项表示选项表示如果已经存在相同名称的数据库,恢复时备份的数据库将会覆盖现有的数据库。如果已经存在相同名称的数据库,恢复时备份的数据库将会覆盖现有的数据库。查询查询081107读者的信息:读者的信息:USEMBOOKGOSELECT*FROMTReaderWHERE借书证号借书证号=081107执行结果如下所示:执行结果如下所示:第16页/共50页L1数据库备份数据库备份C1备份内容备份内容数据库中数据的重要程度决定了数据恢复的必要与重要性,也就决定了数据数据库中
16、数据的重要程度决定了数据恢复的必要与重要性,也就决定了数据是否备份及如何备份。数据库需备份的内容可分为是否备份及如何备份。数据库需备份的内容可分为数据文件(又分为主要数据文数据文件(又分为主要数据文件和次要数据文件)和日志文件两部分件和次要数据文件)和日志文件两部分。其中,数据文件中所存储的系统数据库。其中,数据文件中所存储的系统数据库是确保是确保SQLServer系统正常运行的重要依据,无疑,系统数据库必须被完全备份。系统正常运行的重要依据,无疑,系统数据库必须被完全备份。C2备份介质备份介质备份介质是备份介质是指将数据库备份到的目标载体,即备份到何处。指将数据库备份到的目标载体,即备份到何
17、处。SQLServer2008中,允许使用两种类型的备份介质。中,允许使用两种类型的备份介质。(1)硬盘硬盘:是最常用的备份介质,可以用于备份本地文件,也可以用于备:是最常用的备份介质,可以用于备份本地文件,也可以用于备份网络文件。份网络文件。(2)磁带磁带:是大容量的备份介质,磁带仅可用于备份本地文件。:是大容量的备份介质,磁带仅可用于备份本地文件。第17页/共50页C3备份设备备份设备进行数据库备份时,首先必须在备份介质中创建用来存储备份的备份设备进行数据库备份时,首先必须在备份介质中创建用来存储备份的备份设备。备份设备分为永久备份设备和临时备份设备。备份设备分为永久备份设备和临时备份设备
18、。备份设备备份设备总是有一个物理名称总是有一个物理名称,这个物理名称是操作系统访问物理设备时,这个物理名称是操作系统访问物理设备时所使用的名称。另外还可以使用逻辑名访问备份设备,比使用物理名称更加方所使用的名称。另外还可以使用逻辑名访问备份设备,比使用物理名称更加方便。要使用备份设备的逻辑名进行备份,就必须先创建命名的备份设备,否则便。要使用备份设备的逻辑名进行备份,就必须先创建命名的备份设备,否则就只能使用物理名访问备份设备。将可以使用逻辑名访问的备份设备称为逻辑就只能使用物理名访问备份设备。将可以使用逻辑名访问的备份设备称为逻辑备份设备,而将只能使用物理名访问的备份设备称为物理备份设备。备
19、份设备,而将只能使用物理名访问的备份设备称为物理备份设备。第18页/共50页C4何时备份何时备份对于系统数据库和用户数据库,其备份时机是不同的。对于系统数据库和用户数据库,其备份时机是不同的。(1)系统数据库。当系统数据库)系统数据库。当系统数据库master、msdb和和model中的任何一个被修改中的任何一个被修改以后,都要将其备份。以后,都要将其备份。master数据库包含了数据库包含了SQLServer系统有关数据库的全部信息,即它是系统有关数据库的全部信息,即它是“数据库数据库的数据库的数据库”。如果。如果master数据库损坏,那么数据库损坏,那么SQLServer可能无法启动,并
20、且用户数可能无法启动,并且用户数据库可能无效。当据库可能无效。当master数据库被破坏而没有数据库被破坏而没有master数据库的备份时,就只能重数据库的备份时,就只能重建全部的系统数据库。建全部的系统数据库。当修改了系统数据库当修改了系统数据库msdb或或model时,也必须对它们进行备份,以便在系统时,也必须对它们进行备份,以便在系统出现故障时恢复作业以及用户创建的数据库信息。出现故障时恢复作业以及用户创建的数据库信息。(2)用户数据库。当创建数据库或加载数据库时,应备份数据库。当为数)用户数据库。当创建数据库或加载数据库时,应备份数据库。当为数据库创建索引时,应备份数据库,以便恢复时节
21、省时间。据库创建索引时,应备份数据库,以便恢复时节省时间。当清理了日志或执行了不记日志的当清理了日志或执行了不记日志的T-SQL命令时,应备份数据库,这是因为若命令时,应备份数据库,这是因为若日志记录被清除或命令未记录在事务日志中,日志中将不包含数据库的活动记录,日志记录被清除或命令未记录在事务日志中,日志中将不包含数据库的活动记录,因此不能通过日志恢复数据。不记日志的命令有:因此不能通过日志恢复数据。不记日志的命令有:BACKUPLOGWITHNO_LOG、WRITETEXT、UPDATETEXT、SELECTINTO、命令行实用程序、命令行实用程序、BCP命令等。命令等。第19页/共50页
22、C5限制的操作限制的操作SQLServer在在执行数据库备份的过程中执行数据库备份的过程中,允许允许用户对数据库继续操作,但用户对数据库继续操作,但不不允许允许用户在备份时执行下列操作:创建或删除数据库文件、创建索引、不记日用户在备份时执行下列操作:创建或删除数据库文件、创建索引、不记日志的命令。志的命令。C6备份方法备份方法SQLServer中有两种基本的备份:一是只备份数据库,二是备份数据库和事中有两种基本的备份:一是只备份数据库,二是备份数据库和事务日志,它们又都可以与完全或差异备份相结合。另外,当数据库很大时,也务日志,它们又都可以与完全或差异备份相结合。另外,当数据库很大时,也可以进
23、行个别文件或文件组的备份,从而将数据库备份分割为多个较小的备份可以进行个别文件或文件组的备份,从而将数据库备份分割为多个较小的备份过程。这样就形成了以下四种备份方法。过程。这样就形成了以下四种备份方法。(1)完全数据库备份)完全数据库备份。这种方法按常规定期备份整个数据库,包括事务日。这种方法按常规定期备份整个数据库,包括事务日志。当系统出现故障时,可以恢复到最近一次数据库备份时的状态,但自该备志。当系统出现故障时,可以恢复到最近一次数据库备份时的状态,但自该备份后所提交的事务都将丢失。份后所提交的事务都将丢失。完全数据库备份的主要优点是简单,备份是单一操作,可按一定的时间间完全数据库备份的主
24、要优点是简单,备份是单一操作,可按一定的时间间隔预先设定,恢复时只需一个步骤就可以完成。隔预先设定,恢复时只需一个步骤就可以完成。若数据库不大,或者数据库中的数据变化很少甚至是只读的,那么就可以若数据库不大,或者数据库中的数据变化很少甚至是只读的,那么就可以对其进行全量数据库备份。对其进行全量数据库备份。第20页/共50页(2)数据库和事务日志备份)数据库和事务日志备份。这种方法不需很频繁地定期进行数据库备份,。这种方法不需很频繁地定期进行数据库备份,而是在两次完全数据库备份期间,进行事务日志备份,所备份的事务日志记录了而是在两次完全数据库备份期间,进行事务日志备份,所备份的事务日志记录了两次
25、数据库备份之间所有的数据库活动记录。当系统出现故障后,能够恢复所有两次数据库备份之间所有的数据库活动记录。当系统出现故障后,能够恢复所有备份的事务,而只丢失未提交或提交但未执行完的事务。备份的事务,而只丢失未提交或提交但未执行完的事务。执行恢复时,需要两步:首先恢复最近的完全数据库备份,然后恢复在该完执行恢复时,需要两步:首先恢复最近的完全数据库备份,然后恢复在该完全数据库备份以后的所有事务日志备份。全数据库备份以后的所有事务日志备份。(3)差异备份)差异备份。差异备份只备份自上次数据库备份后发生更改的部分数据。差异备份只备份自上次数据库备份后发生更改的部分数据库,它是用来扩充完全数据库备份或
26、数据库和事务日志的备份方法。对于一个经库,它是用来扩充完全数据库备份或数据库和事务日志的备份方法。对于一个经常修改的数据库,采用差异备份策略可以减少备份和恢复时间。差异备份比全量常修改的数据库,采用差异备份策略可以减少备份和恢复时间。差异备份比全量备份工作量小而且备份速度快,对正在运行的系统影响也较小,因此可以更经常备份工作量小而且备份速度快,对正在运行的系统影响也较小,因此可以更经常地备份。经常备份将减少丢失数据的危险。地备份。经常备份将减少丢失数据的危险。使用差异备份方法,执行恢复时,若是数据库备份,则用最近的完全数据库使用差异备份方法,执行恢复时,若是数据库备份,则用最近的完全数据库备份
27、和最近的差异数据库备份来恢复数据库;若是差异数据库和事务日志备份,备份和最近的差异数据库备份来恢复数据库;若是差异数据库和事务日志备份,则需用最近的完全数据库备份和最近的差异备份后的事务日志备份来恢复数据库。则需用最近的完全数据库备份和最近的差异备份后的事务日志备份来恢复数据库。第21页/共50页(4)数据库文件或文件组备份)数据库文件或文件组备份。这种方法只备份特定的数据库文件或文件。这种方法只备份特定的数据库文件或文件组,同时还要定期备份事务日志,这样在恢复时可以只还原已损坏的文件,而不组,同时还要定期备份事务日志,这样在恢复时可以只还原已损坏的文件,而不用还原数据库的其余部分,从而加快了
28、恢复速度。用还原数据库的其余部分,从而加快了恢复速度。对于被分割在多个文件中的大型数据库,可以使用这种方法进行备份。例如,对于被分割在多个文件中的大型数据库,可以使用这种方法进行备份。例如,如果数据库由几个在物理上位于不同磁盘上的文件组成,当其中一个磁盘发生故如果数据库由几个在物理上位于不同磁盘上的文件组成,当其中一个磁盘发生故障时,只需还原发生了故障的磁盘上的文件。文件或文件组备份和还原操作必须障时,只需还原发生了故障的磁盘上的文件。文件或文件组备份和还原操作必须与事务日志备份一起使用。与事务日志备份一起使用。返回第22页/共50页执行系统存储过程执行系统存储过程sp_addumpdevic
29、e可以在磁盘或磁带上可以在磁盘或磁带上创建逻辑备份设备创建逻辑备份设备。语法格式:语法格式:sp_addumpdevicedevtype=device_type,logicalname=logical_name,physicalname=physical_name说明:说明:device_type指出介质类型,可以是指出介质类型,可以是DISK或或TAPE,DISK表示硬盘文件,表示硬盘文件,TAPE表示是磁带设备;表示是磁带设备;logical_name和和physical_name分别是逻辑名和物理名。分别是逻辑名和物理名。【强化练习强化练习】在本地硬盘在本地硬盘E盘根目录下创建一个备份设
30、备,逻辑名为盘根目录下创建一个备份设备,逻辑名为mybackupfile。USEmasterGOEXECsp_addumpdeviceDISK,mybackupfile,E:mybackupfile.bak说明:在进行数据库备份和恢复时,一般都在系统数据库说明:在进行数据库备份和恢复时,一般都在系统数据库master下进行操作。下进行操作。上例所创建的备份设备的逻辑名是上例所创建的备份设备的逻辑名是“mybackupfile”。所创建的备份设备的物理。所创建的备份设备的物理名是名是E:mybackupfile.bak。返回第23页/共50页C1备份整个数据库备份整个数据库备份整个数据库使用备份
31、整个数据库使用BACKUPDATABASE语句,语法格式:语句,语法格式:BACKUPDATABASE/*被备份的数据库名被备份的数据库名*/TO,.n/*指出备份目标设备指出备份目标设备*/WITH第24页/共50页其中,如下 BLOCKSIZE=blocksize|blocksize_variable /*块大小*/,CHECKSUM|NO_CHECKSUM ,STOP_ON_ERROR|CONTINUE_AFTER_ERROR ,DESCRIPTION=text|text_variable ,DIFFERENTIAL ,EXPIREDATE=date|date_var /*备份集到期和允
32、许被重写的日期*/|RETAINDAYS=days|days_var ,PASSWORD=password|password_variable ,FORMAT|NOFORMAT ,INIT|NOINIT /*指定是覆盖还是追加*/,NOSKIP|SKIP ,MEDIADESCRIPTION=text|text_variable ,MEDIANAME=media_name|media_name_variable ,MEDIAPASSWORD=mediapassword|mediapassword_variable ,NAME=backup_set_name|backup_set_name_var
33、 ,NOREWIND|REWIND ,NOUNLOAD|UNLOAD ,STATS =percentage ,COPY_ONLY 第25页/共50页说明:说明:(1):指定备份操作时要使用的逻辑或物理备份设备,最多可指:指定备份操作时要使用的逻辑或物理备份设备,最多可指定定64个备份设备。个备份设备。可以是下列一种或多种形式。可以是下列一种或多种形式。格式一:格式一:这是由界面方式或系统存储过程这是由界面方式或系统存储过程sp_addumpdevice已经创建的备份设备的逻辑已经创建的备份设备的逻辑名称,数据库将备份到该设备中,其名称必须遵守标识符规则。名称,数据库将备份到该设备中,其名称必须
34、遵守标识符规则。格式二:格式二:DISK|TAPE=这种格式允许在指定的磁盘或磁带设备上创建备份。在执行这种格式允许在指定的磁盘或磁带设备上创建备份。在执行BACKUP语句之前语句之前不必创建指定的物理设备。如果指定的备份设备已存在且不必创建指定的物理设备。如果指定的备份设备已存在且BACKUP语句中没有指定语句中没有指定INIT选项,则备份将追加到该设备。选项,则备份将追加到该设备。当指定当指定TODISK或或TOTAPE时,必须输入完整路径和文件名。例如,时,必须输入完整路径和文件名。例如,DISK=C:ProgramFilesMicrosoftSQLServerMSSQL10.SQL20
35、08MSSQLBackupMBOOK.bak。第26页/共50页(2)WITH子句:可以使用子句:可以使用WITH子句附加一些选项,常用的几个选项说明如子句附加一些选项,常用的几个选项说明如下。下。BLOCKSIZE:用字节数来指定物理块的大小。通常,无须使用该选项,因:用字节数来指定物理块的大小。通常,无须使用该选项,因为为BACKUP会自动选择适于磁盘或磁带设备的块大小。会自动选择适于磁盘或磁带设备的块大小。DIFFERENTIAL:指定数据库备份或文件备份应该只包含上次完整备份后更:指定数据库备份或文件备份应该只包含上次完整备份后更改的数据库或文件部分。这个选项用于差异备份。改的数据库或
36、文件部分。这个选项用于差异备份。PASSWORD:PASSWORD选项为备份集设置密码,它是一个字符串。如果选项为备份集设置密码,它是一个字符串。如果为备份集定义了密码,必须提供这个密码才能对该备份集执行恢复操作。为备份集定义了密码,必须提供这个密码才能对该备份集执行恢复操作。INIT或或NOINIT:进行数据库备份时,可以覆盖备份设备上的已有数据,也:进行数据库备份时,可以覆盖备份设备上的已有数据,也可以在已有数据之后进行追加备份可以在已有数据之后进行追加备份。NOINIT选项指定追加备份集到选项指定追加备份集到已有的备份设已有的备份设备的数据之后,备的数据之后,它是备份的默认方式。它是备份
37、的默认方式。INIT选项则指定备份为覆盖式的,选项则指定备份为覆盖式的,在此选项在此选项下,下,SQLServer将只保留介质的标头,而从备份设备的开始写入备份集数据,因此将只保留介质的标头,而从备份设备的开始写入备份集数据,因此将覆盖备份设备上已有的数据。将覆盖备份设备上已有的数据。SKIP与与NOSKIP:若使用:若使用SKIP,禁用备份集的过期和名称检查,这些检查一,禁用备份集的过期和名称检查,这些检查一般由般由BACKUP语句执行以防覆盖备份集。若使用语句执行以防覆盖备份集。若使用NOSKIP,则,则SQLServer将指示将指示BACKUP语句在可以覆盖媒体上的所有备份集之前先检查它
38、们的过期日期,这是默语句在可以覆盖媒体上的所有备份集之前先检查它们的过期日期,这是默认值。认值。第27页/共50页MEDIADESCRIPTION:指定媒体集的自由格式文本说明,最多为:指定媒体集的自由格式文本说明,最多为255个字个字符。符。MEDIANAME:备份时,可用:备份时,可用BACKUP语句的语句的MEDIANAME选项指定介质集选项指定介质集的名称,或在的名称,或在“对象资源管理器对象资源管理器”中备份数据库功能选项中的媒体集名称输入框中备份数据库功能选项中的媒体集名称输入框中输入介质集的名称。中输入介质集的名称。所谓介质集是指用来保存一个或多个备份集的备份设备的集合,它可以是
39、一所谓介质集是指用来保存一个或多个备份集的备份设备的集合,它可以是一个备份设备,也可是多个备份设备。如果多设备介质集中的备份设备是磁盘设备,个备份设备,也可是多个备份设备。如果多设备介质集中的备份设备是磁盘设备,那么每个备份设备实际上就是一个文件。如果多设备介质集中的备份设备是磁带那么每个备份设备实际上就是一个文件。如果多设备介质集中的备份设备是磁带设备,那么每个备份设备实际上是由一个或多个磁带组成的。设备,那么每个备份设备实际上是由一个或多个磁带组成的。NAME:NAME选项指定备份集的名称,备份集名最长可达选项指定备份集的名称,备份集名最长可达128个字符。个字符。若没有指定若没有指定NA
40、ME,它将为空。,它将为空。STATS:STATS选项报告截止报告下一个间隔的阈值时的完成百分比。这选项报告截止报告下一个间隔的阈值时的完成百分比。这是指定百分比的近似值,例如,当是指定百分比的近似值,例如,当STATS=10时,如果完成进度为时,如果完成进度为40%,则该选项,则该选项可能显示可能显示43%。每当另一个。每当另一个percentage结束时显示一个消息,它被用于测量进度。结束时显示一个消息,它被用于测量进度。如果省略如果省略percentage,则,则SQLServer在每完成在每完成10%就显示一条消息。就显示一条消息。第28页/共50页COPY_ONLY:指定此备份不影响
41、正常的备份序列。:指定此备份不影响正常的备份序列。【强化练习强化练习】使用逻辑名使用逻辑名test在在D盘盘data文件夹下创建一个命名的备份设备,文件夹下创建一个命名的备份设备,并将数据库并将数据库PXSCJ完全备份到该设备,并覆盖设备中原有的内容。完全备份到该设备,并覆盖设备中原有的内容。EXECsp_addumpdeviceDISK,test,D:datatest.bakBACKUPDATABASEPXSCJTOtestWITHINIT本例的执行结果如图本例的执行结果如图9.10所示。所示。图9.10 完全备份数据库PXSCJ第29页/共50页C2差异备份数据库差异备份数据库对于需频繁修
42、改的数据库,进行差异备份可以缩短备份和恢复的时间。只有对于需频繁修改的数据库,进行差异备份可以缩短备份和恢复的时间。只有当已经执行了完全数据库备份后才能执行差异备份。进行差异备份时,当已经执行了完全数据库备份后才能执行差异备份。进行差异备份时,SQLServer将备份从最近的完全数据库备份后数据库发生了变化的部分。将备份从最近的完全数据库备份后数据库发生了变化的部分。语法格式:语法格式:BACKUPDATABASEREAD_WRITE_FILEGROUPS,FILEGROUP=,.nTO,nWITH,DIFFERENTIAL/*其余选项与数据库的完全备份相同其余选项与数据库的完全备份相同*/第
43、30页/共50页说明:说明:DIFFERENTIAL选项是表示差异备份的关键字。选项是表示差异备份的关键字。READ_WRITE_FILEGROUPS选项指定在部分备份中备份所有读选项指定在部分备份中备份所有读/写文件组。写文件组。FILEGROUP选项是只读文件组或变量的逻辑名称,其值等于要包含在部分备份中选项是只读文件组或变量的逻辑名称,其值等于要包含在部分备份中的只读文件组的逻辑名称。的只读文件组的逻辑名称。SQLServer执行差异备份时需注意下列几点:执行差异备份时需注意下列几点:(1)若在上次完全数据库备份后,数据库的某行被修改了,则执行差异备)若在上次完全数据库备份后,数据库的某
44、行被修改了,则执行差异备份只保存最后依次改动的值;份只保存最后依次改动的值;(2)为了使差异备份设备与完全数据库备份设备能区分开来,应使用不同)为了使差异备份设备与完全数据库备份设备能区分开来,应使用不同的设备名。的设备名。【强化练习强化练习】创建临时备份设备并在所创建的临时备份设备上进行差异备份。创建临时备份设备并在所创建的临时备份设备上进行差异备份。USEmasterGOBACKUPDATABASEPXSCJTODISK=E:pxscjbk.bakWITHDIFFERENTIAL/物理备份名物理备份名/差异备份的关键字差异备份的关键字第31页/共50页C3备份数据库文件或文件组备份数据库文
45、件或文件组当数据库非常大时,可以进行数据库文件或文件组的备份当数据库非常大时,可以进行数据库文件或文件组的备份。语法格式:语法格式:BACKUPDATABASE,.f/*指定文件或文件组名指定文件或文件组名*/TO,.nWITH,DIFFERENTIAL/*选项与数据库的完全备份相同选项与数据库的完全备份相同*/其中:其中::=FILE=|FILEGROUP=第32页/共50页说明:该语句将参数说明:该语句将参数指定的数据库文件或文件组备份到指定指定的数据库文件或文件组备份到指定的备份设备上。的备份设备上。“FILE=”用于给一个或多个包含在数据库备份中的文件命用于给一个或多个包含在数据库备份
46、中的文件命名,名,“FILEGROUP=”用于给一个或多个包含在数据库备份中的文件组命用于给一个或多个包含在数据库备份中的文件组命名。名。使用数据库文件或文件组备份时,要注意以下几点:使用数据库文件或文件组备份时,要注意以下几点:(1)必须指定文件或文件组的逻辑名;)必须指定文件或文件组的逻辑名;(2)必须执行事务日志备份,以确保恢复后的文件与数据库的其他部分的一)必须执行事务日志备份,以确保恢复后的文件与数据库的其他部分的一致性;致性;(3)应轮流备份数据库中的文件或文件组,以使数据库中的所有文件或文件)应轮流备份数据库中的文件或文件组,以使数据库中的所有文件或文件组都定期得到备份。组都定期
47、得到备份。【强化练习强化练习】设设TT数据库有数据库有2个数据文件个数据文件t1和和t2,事务日志存储在文件,事务日志存储在文件tlog中。中。将文件将文件t1备份到备份设备备份到备份设备t1backup中,将事务日志文件备份到中,将事务日志文件备份到tbackuplog中。中。EXECsp_addumpdevicedisk,t1backup,D:datat1backup.bakEXECsp_addumpdevicedisk,tbackuplog,D:datatbackuplog.bakGOBACKUPDATABASETTFILE=t1TOt1backupBACKUPLOGTTTOtbacku
48、plog第33页/共50页C4事务日志备份事务日志备份当进行事务日志备份时,系统进行下列操作:当进行事务日志备份时,系统进行下列操作:(1)将事务日志中从前一次成功备份结束位置开始到当前事务日志的结尾处)将事务日志中从前一次成功备份结束位置开始到当前事务日志的结尾处的内容进行备份;的内容进行备份;(2)标识事务日志中活动部分的开始,所谓事务日志的活动部分指从最近的)标识事务日志中活动部分的开始,所谓事务日志的活动部分指从最近的检查点或最早的打开位置开始至事务日志的结尾处。检查点或最早的打开位置开始至事务日志的结尾处。进行事务日志备份使用进行事务日志备份使用BACKUPLOG语句。语法格式:语句
49、。语法格式:BACKUPLOGTO,.nWITHNORECOVERY|STANDBY=undo_file_name|NO_TRUNCATE/*其余选项与数据库的完全备份相同其余选项与数据库的完全备份相同*/第34页/共50页说明:说明:BACKUPLOG语句指定只备份事务日志,所备份的日志内容是从上一次语句指定只备份事务日志,所备份的日志内容是从上一次成功执行了事务日志备份之后到当前事务日志的末尾。成功执行了事务日志备份之后到当前事务日志的末尾。lNO_TRUNCATE选项:若数据库被损坏,则应使用选项:若数据库被损坏,则应使用NO_TRUNCATE选项备份数据选项备份数据库。使用该选项可以备
50、份最近的所有数据库活动,库。使用该选项可以备份最近的所有数据库活动,SQLServer将保存整个事务日将保存整个事务日志。志。lNORECOVERY选项:该选项将数据备份到日志尾部,不覆盖原有的数据。选项:该选项将数据备份到日志尾部,不覆盖原有的数据。lSTANDBY选项:该选项将备份日志尾部,并使数据库处于只读或备用模式。选项:该选项将备份日志尾部,并使数据库处于只读或备用模式。其中的其中的undo_file_name是要撤销的文件名,该文件名指定了容纳回滚(是要撤销的文件名,该文件名指定了容纳回滚(rollback)更改的存储。如果指定的撤销文件名不存在,更改的存储。如果指定的撤销文件名不