创建备份设备
根据下列表信息创建一个永久备份设备
名字 磁盘文件名
Bak1 D:\Backup\bak1.bak
/*
创建备份设备
参数1:设备类型
参数2:设备名称
参数3;备份文件的物理路径
Test1.bak是备份之后的文件名
*/
EXEC sp_addumpdevice 'disk', 'Test1', 'c:\dump\Test1.bak';
/*
创建备份数据库存储过程
*/
---------------------------------
USE [Test]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
CREATE PROCEDURE [dbo].[SpBackupDatabase]
@Day varchar(4),
@DBName varchar(25),
@BackupPath varchar(200)
AS
declare @DevCount int
declare @DevName varchar(20)
declare @BackupFile varchar(100)
set @DevName = @DBName + @Day
select @DevCount=count(*) from [sys].[backup_devices] where name = @DevName
select @BackupFile = @BackupPath + @DBName + '_' + @Day + '.bak'
if (@DevCount=0)
begin
EXEC sp_addumpdevice 'disk', @DevName, @BackupFile
end
BACKUP DATABASE @DBName TO @DevName with Init
GO
---------------------------------
/*
------测试存储过程-----
exec SpBackupDatabase '2','YPTTS','C:\dump\'
*/
-- A.添加磁盘转储设备
-- 下面的示例添加了一个名为 Test1 的磁盘备份设备,其物理名称为 c:\dump\dump1.bak。\
USE master;
GO
EXEC sp_addumpdevice 'disk', 'Test1', 'c:\dump\Test1.bak';
/*
B.添加网络磁盘备份设备
下面的示例显示了添加名为 networkdevice 的远程磁盘备份设备的过程。
用于启动数据库引擎的名称必须对该远程文件 (\\<servername>\<sharename>\<path>\<filename>.bak) 拥有权限。
*/
USE master;
GO
EXEC sp_addumpdevice 'disk', 'networkdevice',
'\\<servername>\<sharename>\<path>\<filename>.bak';
-- C.添加磁带备份设备
-- 下面的示例添加物理名称为 \\.\tape0 的 tapedump1 设备。
USE master;
GO
EXEC sp_addumpdevice 'tape', 'tapedump1', '\\.\tape0';
-- D.备份到逻辑备份设备
-- 以下示例为某备份磁盘文件创建了名为 AdvWorksData 的逻辑备份设备。 该示例随后会将 AdventureWorks2012 数据库备份到此逻辑备份设备。
USE master
GO
EXEC sp_addumpdevice 'disk', 'AdvWorksData',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\BACKUP\AdvWorksData.bak';
GO
BACKUP DATABASE AdventureWorks2012
TO AdvWorksData
WITH FORMAT;
GO