次の方法で共有


sp_addumpdevice (Transact-SQL)

バックアップ デバイスを Microsoft SQL Server 2005 データベース エンジンのインスタンスに追加します。

トピック リンク アイコンTransact-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) で、次のいずれかの値を指定できます。

    説明

    disk

    バックアップ デバイスとしてのハード ディスク ファイル。

    tape

    Microsoft Windows でサポートされるテープ デバイス。

  • [ @logicalname = ] 'logical_name'
    BACKUP ステートメントおよび RESTORE ステートメントで使用するバックアップ デバイスの論理名を指定します。logical_name のデータ型は sysname で、既定値はありません。NULL 値は許可されません。
  • [ @physicalname = ] 'physical_name'
    バックアップ デバイスの物理名を指定します。物理名にはオペレーティング システムのファイル名の規則またはネットワーク デバイスの UNC (汎用名前付け規則) が適用されます。物理名には完全パスを指定する必要があります。physical_name のデータ型は nvarchar(260) で、既定値はありません。NULL 値は許可されません。

    リモート ネットワーク上にバックアップ デバイスを作成する場合は、データベース エンジンを起動した名前でそのリモート コンピュータ上に書き込むことができるか確認してください。

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

    ms188409.note(ja-jp,SQL.90).gifメモ :
    このプロシージャでは、指定された物理名がカタログに入力されます。プロシージャがデバイスへのアクセスや作成を試みることはありません。
  • [ @cntrltype = ] 'controller_type'
    使用されなくなりました。このパラメータを指定しても無視されます。旧バージョンとの互換性のためだけに用意されています。sp_addumpdevice を初めて使用する場合は、このパラメータを指定しないでください。
  • [ @devstatus = ] 'device_status'
    使用されなくなりました。このパラメータを指定しても無視されます。旧バージョンとの互換性のためだけに用意されています。sp_addumpdevice を初めて使用する場合は、このパラメータを指定しないでください。

リターン コードの値

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

結果セット

なし

解説

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

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

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

各テープ ドライブのメーカーが推奨するテープ以外は使用しないでください。DAT (digital audio tape) ドライブを使用している場合は、コンピュータ用の DAT テープ (Digital Data Storage-DDS) を使用してください。

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

権限

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 を作成した後、作成した論理バックアップ デバイスに AdventureWorks データベースをバックアップします。

USE master
GO
EXEC sp_addumpdevice 'disk', 'AdvWorksData', 
'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BACKUP\AdvWorksData.bak';
GO
BACKUP DATABASE AdventureWorks 
 TO AdvWorksData
   WITH FORMAT;
GO

参照

関連項目

BACKUP (Transact-SQL)
RESTORE (Transact-SQL)
sp_dropdevice (Transact-SQL)
sys.backup_devices (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)

その他の技術情報

バックアップ デバイス
ディスク ファイルの論理バックアップ デバイスを定義する方法 (SQL Server Management Studio)
テープ ドライブの論理バックアップ デバイスを定義する方法 (SQL Server Management Studio)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手