SQL Server 2000数据库备份恢复语句 _51CTO技术论坛_中国领先的IT技术...

来源:百度文库 编辑:神马文学网 时间:2024/04/28 07:50:40
USE master

go

\\创建备份设备:disk:设备类型;cwbase1bf:逻辑设备名;D:\a-zkc\cwbase1bf.dup:物理设备名;

sp_addumpdevice 'disk ', 'cwbase1bf ', 'D:\a-zkc\cwbase1bf.dup '

go

\\创建备份:cwbase1:要备份的数据库名称;cwbase1bf:完成备份的逻辑设备名

backup database cwbase1 to cwbase1bf

with init





/*--------------SQL SERVER2000数据库恢复语句----------------------*/

\\从备份文件中查看所备份的设备文件名cwdata?.dat

RESTORE FILELISTONLY

FROM DISK = 'F:\zkc-bf\cwbase1zkc.dup '

/*----恢复;注:要恢复的数据库名 'cwbase? ',是根据上面的语句的执行结果定;move后的设备名一定要和上面语执行的结果(cwdata?.dat\cwlog?.dat)一致,to后面为你要恢复的数据库的目录和设备名,可执行:select filename from sysdatabases where name= 'cwbase? '查看。---*/

RESTORE DATABASE cwbase2

FROM DISK = 'F:\zkc-bf\cwbase1zkc.dup '

WITH MOVE 'cwdata1 ' TO 'F:\zkc-bf\cwdata2.dat ',

MOVE 'cwlog1 ' TO 'F:\zkc-bf\cwlog2.dat '

replace

[color=Red]备份时的:with init参数和恢复时的:move、relpac不是太明白[/color] 标题:        作者:1937  时间:2007-11-06 16:29 [color=red][b]此回复于2007-11-20 18:25被 [url=http://bbs.51cto.com/profile-uid-7466.html]阿楚[/url] 评为最佳答案[/b][/color]

INIT

指定应重写所有备份集,但是保留媒体头。如果指定了 INIT,将重写那个设备上的所有现有的备份集数据。
当遇到以下几种情况之一时不重写备份媒体:

媒体上的备份设置没有全部过期。有关更多信息,请参见 EXPIREDATE 和 RETAINDAYS 选项。

如果 BACKUP 语句给出了备份集名,该备份集名与备份媒体上的名称不匹配。有关更多信息,请参见 NAME 子句。
使用 SKIP 选项替代这些检查。有关使用 SKIP、NOSKIP、INIT 和 NOINIT 时的相互作用关系的更多信息,请参见注释部分。

说明 如果备份媒体有密码保护,SQL Server 将不写入媒体,除非提供媒体密码。SKIP 选项不替代此检查。只有通过格式化才能重写受密码保护的媒体。有关更多信息,请参见 FORMAT 选项。


MOVE 'logical_file_name ' TO 'operating_system_file_name '

指定应将给定的 logical_file_name 移到 operating_system_file_name。默认情况下,logical_file_name 将还原到其原始位置。如果使用 RESTORE 语句将数据库复制到相同或不同的服务器上,则可能需要使用 MOVE 选项重新定位数据库文件以避免与现有文件冲突。可以在不同的 MOVE 语句中指定数据库内的每个逻辑文件。


REPLACE

指定即使存在另一个具有相同名称的数据库,SQL Server 也应该创建指定的数据库及其相关文件。在这种情况下将删除现有的数据库。如果没有指定 REPLACE 选项,则将进行安全检查以防止意外重写其它数据库。 标题:        作者:cool技  时间:2007-11-06 16:33 MOVE 'logical_file_name ' TO 'operating_system_file_name '

指定应将给定的 logical_file_name 移到 operating_system_file_name。默认情况下,logical_file_name 将还原到其原始位置。如果使用 RESTORE 语句将数据库复制到相同或不同的服务器上,则可能需要使用 MOVE 选项重新定位数据库文件以避免与现有文件冲突。可以在不同的 MOVE 语句中指定数据库内的每个逻辑文件。 标题:        作者:cool技  时间:2007-11-06 16:35 REPLACE

指定即使存在另一个具有相同名称的数据库,SQL Server 也应该创建指定的数据库及其相关文件。在这种情况下将删除现有的数据库。如果没有指定 REPLACE 选项,则将进行安全检查以防止意外重写其它数据库。安全检查可确保在以下情况中,RESTORE DATABASE 语句不会将数据库还原到当前服务器:

在 RESTORE 语句中命名的数据库已经在当前服务器上存在,并且


该数据库名称与备份集中记录的数据库名称不同。
若无法验证现有文件是否属于正在还原的数据库,则 REPLACE 也允许 RESTORE 重写该文件。RESTORE通常拒绝重写已存在的文件。 标题:        作者:boyi55  时间:2007-11-06 18:13 对于参数的解释,可以查看联机帮助