sp_addumpdevice (Transact-SQL)

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

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

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

Topic link iconTransact-SQL 構文表記規則

構文

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

引数

[ @devtype = ] 'device_type' バックアップ デバイスの種類です。 device_typeは varchar(20) で、既定値はなく、次のいずれかの値を指定できます。

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

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

[ @logicalname = ] 'logical_name' BACKUP ステートメントと RESTORE ステートメントで使用されるバックアップ デバイスの論理名です。 logical_namesysname で、既定値はなく、NULL にすることはできません。

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

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

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

Note

この手順では、指定した物理名をカタログに入力します。 この手順では、デバイスへのアクセスや作成は試行されません。

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

[ @devstatus = ] 'device_status' 時代遅れ。 指定した場合、このパラメーターは無視されます。 旧バージョンとの互換性のためだけに用意されています。 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 (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)