適用於:SQL Server
將備份裝置新增至 SQL Server 的實例。
語法
sp_addumpdevice
[ @devtype = ] 'devtype'
, [ @logicalname = ] N'logicalname'
, [ @physicalname = ] N'physicalname'
[ , [ @cntrltype = ] cntrltype ]
[ , [ @devstatus = ] 'devstatus' ]
[ ; ]
引數
[ @devtype = ] 「開發型態」
備份裝置的類型。 @devtype為 varchar(20),沒有預設值,而且可以是下列其中一個值。
| 值 | Description |
|---|---|
disk |
硬碟檔案作為備份裝置。 |
tape |
Microsoft Windows 支援的任何磁帶裝置。 注意:未來 SQL Server 版本將會移除磁帶備份裝置的支援。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 |
[ @logicalname = ] N'logicalname'
BACKUP 和 RESTORE 語句中使用的備份裝置邏輯名稱。
@logicalname是 sysname,沒有預設值,而且不能是 NULL。
[ @physicalname = ] N'physicalname'
備份裝置的實體名稱。
@physicalname是 nvarchar(260),沒有預設值,而且不能是 NULL。 實體名稱必須遵循操作系統檔名的規則,或網路裝置的通用命名慣例,而且必須包含完整路徑。
在遠端網路位置上建立備份裝置時,請確定啟動 資料庫引擎 的名稱在遠端電腦上具有適當的寫入功能。
如果您新增磁帶裝置,此參數必須是 Windows 指派給本機磁帶裝置的實體名稱;例如, \\.\TAPE0 針對電腦上的第一個磁帶裝置。 磁帶裝置必須連接至伺服器電腦;無法從遠端使用。 以引號括住包含非虛構字元的名稱。
注意
此程式會將指定的實體名稱輸入目錄。 此程式不會嘗試存取或建立裝置。
[ @cntrltype = ] CNTRLTYPE
已過時。 如果指定,則會忽略此參數。 支援回溯相容性。 的新用法 sp_addumpdevice 應該省略此參數。
[ @devstatus = ] 「開發狀態」
已過時。 如果指定,則會忽略此參數。 支援回溯相容性。 的新用法 sp_addumpdevice 應該省略此參數。
傳回碼值
0 (成功) 或 1 (失敗)。
結果集
無。
備註
sp_addumpdevice 將備份裝置新增至 sys.backup_devices 目錄檢視。 接著,裝置可以在和 BACKUP 語句中RESTORE以邏輯方式參考。
sp_addumpdevice 不會對實體裝置執行任何存取。 只有在執行 或 BACKUP 語句時RESTORE,才會存取指定的裝置。 建立邏輯備份裝置可以簡化 BACKUP 和 RESTORE 語句,其中指定裝置名稱是使用 TAPE = 或 DISK = 子句指定裝置路徑的替代方式。
擁有權和許可權問題可能會干擾磁碟或文件備份裝置的使用。 請確定已啟動 資料庫引擎 的 Windows 帳戶具有適當的檔案許可權。
資料庫引擎 支援將磁帶備份至 Windows 支援的磁帶裝置。 如需 Windows 支援磁帶裝置的詳細資訊,請參閱 Windows 的硬體相容性清單。 若要檢視計算機上可用的磁帶裝置,請使用 SQL Server Management Studio。
只針對磁碟驅動器製造商建議的特定磁帶機使用建議的磁帶。 如果您使用數位音訊磁帶 (DAT) 磁碟驅動器,請使用電腦級 DAT 磁帶 (數字資料儲存區 (DDS) 。
sp_addumpdevice 無法在交易內執行。
若要刪除裝置,請使用sp_dropdevice或刪除備份裝置(SQL Server)。
權限
需要 diskadmin 固定伺服器角色的成員資格。
需要寫入磁碟的權限。
範例
A. 新增磁碟傾印裝置
下列範例會新增名為 mydiskdump的磁碟備份裝置,其實體名稱 C:\dump\dump1.bak為 。
USE master;
GO
EXECUTE sp_addumpdevice 'disk', 'mydiskdump', 'C:\dump\dump1.bak';
B. 新增網路磁碟備份裝置
下列範例示範新增名為的 networkdevice遠端磁碟備份裝置。 啟動 資料庫引擎 的名稱必須具有該遠端檔案的許可權(\\<servername>\<sharename>\<path>\<filename>.bak)。
USE master;
GO
EXECUTE sp_addumpdevice
'disk',
'networkdevice',
'\\<servername>\<sharename>\<path>\<filename>.bak';
C. 新增磁帶備份裝置
下列範例會 tapedump1 新增實體名稱 \\.\tape0為的裝置。
USE master;
GO
EXECUTE sp_addumpdevice 'tape', 'tapedump1', '\\.\tape0';
D. 備份到邏輯備份裝置
下列範例會建立備份磁碟檔案的邏輯備份裝置 AdvWorksData。 此範例接著會將 AdventureWorks2025 資料庫備份至此邏輯備份裝置。
USE master;
GO
EXECUTE sp_addumpdevice
'disk',
'AdvWorksData',
'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\BACKUP\AdvWorksData.bak';
GO
BACKUP DATABASE AdventureWorks2022
TO AdvWorksData WITH FORMAT;
GO