sp_addumpdevice (Transact-SQL)

適用対象: はいSQL Server (サポートされているすべてのバージョン)

適用対象: SQL Server (SQL Server 2008 から 現在のバージョンまで)。

バックアップ デバイスを SQL Server のインスタンスに追加します。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

  
sp_addumpdevice [ @devtype = ] 'device_type'   
    , [ @logicalname = ] 'logical_name'   
    , [ @physicalname = ] 'physical_name'  
      [ , { [ @cntrltype = ] controller_type |  
          [ @devstatus = ] 'device_status' }  
      ]  

引数

[ @devtype = ] 'device_type' バックアップデバイスの種類を示します。 device_typevarchar (20) で、既定値はありません。次のいずれかの値を指定できます。

説明
ディスク バックアップデバイスとしてのハードディスクファイル。
テープ Microsoft Windows でサポートされるテープ デバイス。

注:テープ バックアップ デバイスは、将来のバージョンの SQL Serverでサポートされなくなる予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。

[ @logicalname = ] 'logical_name' BACKUP ステートメントおよび RESTORE ステートメントで使用するバックアップデバイスの論理名を指定します。 logical_namesysname であり、既定値はありません。 NULL にすることはできません。

[ @physicalname = ] 'physical_name' バックアップデバイスの物理名を指定します。 物理名は、オペレーティングシステムのファイル名の規則またはネットワークデバイスの汎用名前付け規則に従う必要があり、完全なパスを含める必要があります。 physical_namenvarchar (260) で、既定値はありません。 NULL にすることはできません。

リモートネットワークの場所にバックアップデバイスを作成する場合は、を起動したときに使用されていた名前に、 データベース エンジン リモートコンピューターに対する適切な書き込み機能があることを確認してください。

テープデバイスを追加する場合、このパラメーターには、Windows によってローカルテープデバイスに割り当てられた物理名を指定する必要があります。たとえば、コンピューター上の最初のテープデバイスの \ \ .\TAPE0 です。 テープデバイスがサーバーコンピューターに接続されている必要があります。リモートで使用することはできません。 英数字以外の文字を含む名前は引用符で囲みます。

注意

このプロシージャは、指定された物理名をカタログに入力します。 この手順では、デバイスにアクセスしたり、デバイスを作成したりすることはありません。

[ @cntrltype = ] 'controller_type' 公表. 指定した場合、このパラメーターは無視されます。 旧バージョンとの互換性のためだけに用意されています。 Sp_addumpdevice の新しい使用では、このパラメーターを省略する必要があります。

[ @devstatus = ] 'device_status' 公表. 指定した場合、このパラメーターは無視されます。 旧バージョンとの互換性のためだけに用意されています。 Sp_addumpdevice の新しい使用では、このパラメーターを省略する必要があります。

リターン コードの値

0 (成功) または 1 (失敗)

結果セット

なし

解説

sp_addumpdevicesys.backup_devices カタログビューにバックアップデバイスを追加します。 その後、そのデバイスを BACKUP ステートメントや RESTORE ステートメントで論理的に参照できるようになります。 sp_addumpdevice では、物理デバイスへのアクセスは一切実行されません。 BACKUP ステートメントや RESTORE ステートメントが実行されるときにだけ、指定されたデバイスにアクセスされます。 論理バックアップデバイスを作成すると、BACKUP ステートメントと RESTORE ステートメントが簡略化されます。デバイス名を指定する場合は、"TAPE =" または "DISK =" 句を使用してデバイスパスを指定します。

所有権とアクセス許可の問題によって、ディスクまたはファイルバックアップデバイスの使用が妨げられることがあります。 データベース エンジンを起動する Windows アカウントに適切なファイル権限が付与されているかどうかを確認してください。

データベース エンジンでは、Windows でサポートされているテープ デバイスへのバックアップがサポートされます。 Windows でサポートされるテープ デバイスの詳細については、Windows のハードウェア互換性リストを参照してください。 コンピューターで使用できるテープ デバイスを表示するには、SQL Server Management Studio を使用します。

ドライブの製造元によって提案された特定のテープドライブに対して、推奨されるテープのみを使用します。 DAT (digital audio tape) ドライブを使用している場合は、コンピューター用の DAT テープ (Digital Data Storage-DDS) を使用してください。

sp_addumpdevice をトランザクション内で実行することはできません。

デバイスを削除するには、 sp_dropdevice またはSQL Server Management Studioを使用します。

アクセス許可

diskadmin 固定サーバー ロールのメンバーシップが必要です。

ディスクに対する書き込み権限が必要です。

A. ディスクダンプデバイスを追加する

次の例では、という名前のディスクバックアップデバイスを mydiskdump 物理名で追加し c:\dump\dump1.bak ます。

USE master;  
GO  
EXEC sp_addumpdevice 'disk', 'mydiskdump', 'c:\dump\dump1.bak';  

B. ネットワークディスクバックアップデバイスを追加する

次の例では、networkdevice というリモートのディスク バックアップ デバイスを追加します。 データベース エンジンを起動する名前には、そのリモート ファイル (\\<servername>\<sharename>\<path>\<filename>.bak) を扱う権限が必要です。

USE master;  
GO  
EXEC sp_addumpdevice 'disk', 'networkdevice',  
    '\\<servername>\<sharename>\<path>\<filename>.bak';  

C. テープ バックアップ デバイスを追加する

次の例では、 tapedump1 物理名を使用してデバイスを追加し \\.\tape0 ます。

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\MSSQL13.MSSQLSERVER\MSSQL\BACKUP\AdvWorksData.bak';  
GO  
BACKUP DATABASE AdventureWorks2012   
 TO AdvWorksData  
   WITH FORMAT;  
GO  

参照

バックアップ デバイス (SQL Server)
BACKUP (Transact-SQL)
ディスク ファイルの論理バックアップ デバイスの定義 (SQL Server)
テープ ドライブの論理バックアップ デバイスの定義 (SQL Server)
RESTORE (Transact-SQL)
sp_dropdevice (Transact-SQL)
sys.backup_devices (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)