SQL Server 2005使用命名的备份设备

本文介绍了如何使用SQL Server中的系统存储过程创建、查询和删除备份设备。通过定义备份设备,可以简化备份和恢复操作,避免每次指定完整的磁盘路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

你可以在BACKUP或RESTORE命令中定义磁带或磁盘的逻辑名称。定义设备会把它添加到sys.backup_devices目录视图,不用再键入磁盘路径和文件或磁带名称。

为了增加一个新的备份设备定义,可以使用sp_addumpdevice系统存储过程:

这些命令的参数描述请见表29-5。

表29-5 sp_addumpdevice参数

参  数

描  述

device_type

用来指定设备类型:disk或tape

logical_name

将在BACKUP和RESTORE中使用的备份设备的名称

physical_name

操作系统文件名(遵守通用命名约定(UNC)的名称)或磁带路径

controller_type

不再需要的参数:2代表磁盘,5代表磁带

device_status

这个选项确定ANSI磁盘标志是可读(noskip)还是被忽略(skip),在应用之前,noskip是磁带类型的默认值。该选项和controller_type只能指定其中一个,不能都指定

要查看备份设备的定义,可以使用sp_helpdevice系统存储过程,它只包含一个参数logical_ name:

删除备份设备使用sp_dropdevice:

第一个参数是备份设备的名称,当第二个参数指定了DELFILE时,将删除实际的备份设备文件。

在示例中的第一部分,创建了一个名为TestDBBackup的备份设备,它被映射到C:/Apress/Recipes/ TestDB_Device.bak文件上:

这个查询返回:

命令已成功完成。

下一步,使用sp_helpdevice查询关于设备的信息:

这个查询返回:

下一步,执行基于该设备的备份:

这个查询返回:

已为数据库'TestDB',文件'TestDB'(位于文件1上)处理了2472页。

已为数据库'TestDB',文件'TestDB_log'(位于文件1上)处理了1页。

BACKUP DATABASE成功处理了2473页,花费1.887秒(10.735MB/秒)。

最后,我们使用sp_dropdevice删除该设备(如果没有指定第二个选项DELFILE,物理备份文件还将保留在操作系统内):

这个查询返回:

设备已除去。

解析

在这个技巧中,我演示了如何创建一个命名的备份设备,它允许你不去键入你需要在BACKUP或RESTORE命令中指定的完整磁盘或磁带名称。

在此技巧中的第一个示例使用sp_addumpdevice创建了一个设备。存储过程的第一个参数设置设备类型为disk。第二个参数是设备的逻辑名称,第三个参数是实际的物理文件路径和名称。此技巧的第二个查询演示了使用sp_helpdevice来返回设备的信息。信息包括与设备描述相关的status字段,以及指定设备类型(2代表磁盘设备,5代表磁带)的cntrltype列。此技巧中的第三个查询演示了在备份中使用设备,它只是指定了设备名而不是使用DISK或TAPE选项,在此技巧的最后一个查询中,我们使用sp_dropdevice删除了该设备。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值