データベースの完全バックアップの作成Create a Full Database Backup

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

このトピックでは、 SQL Server 2017SQL Server 2017SQL Server Management StudioSQL Server Management StudioTransact-SQLTransact-SQL、または PowerShell を使用して、データベースの完全バックアップを作成する方法について説明します。This topic describes how to create a full database backup in SQL Server 2017SQL Server 2017 using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell.

Azure Blob Storage サービスへの SQL Server のバックアップについては、「Windows Azure BLOB ストレージ サービスを使用した SQL Server のバックアップと復元」および「SQL Server Backup to URL」を参照してください。For information on SQL Server backup to the Azure Blob storage service, see SQL Server Backup and Restore with Azure Blob Storage Service and SQL Server Backup to URL.

制限事項と制約事項Limitations and restrictions

  • BACKUP ステートメントは、明示的または暗黙的なトランザクションでは使用できません。The BACKUP statement is not allowed in an explicit or implicit transaction.
  • 新しいバージョンの SQL ServerSQL Server によって作成されたバックアップは、以前のバージョンの SQL ServerSQL Serverでは復元できません。Backups created by more recent version of SQL ServerSQL Server cannot be restored in earlier versions of SQL ServerSQL Server.

バックアップの概念とタスクに関する概要および詳細については、先へ進む前に「Backup Overview (SQL Server)」を参照してください。For an overview of, and deeper dive into, backup concepts and tasks, see Backup Overview (SQL Server) before proceeding.

推奨事項Recommendations

  • データベース サイズが大きくなると、データベースの完全バックアップにかかる時間は長くなり、必要な記憶領域も増加します。As a database increases in size, full database backups take more time to complete and require more storage space. 大規模なデータベースでは、一連のデータベースの差分バックアップを使用してデータベースの完全バックアップを補完することを検討してください。For large databases, consider supplementing full database backups with a series of differential database backups.
  • データベースの完全バックアップのサイズは、 sp_spaceused システム ストアド プロシージャを使用して推計します。Estimate the size of a full database backup by using the sp_spaceused system stored procedure.
  • 既定では、バックアップ操作が成功するたびに、 SQL ServerSQL Server エラー ログおよびシステム イベント ログにエントリが 1 つ追加されます。By default, every successful backup operation adds an entry in the SQL ServerSQL Server error log and in the system event log. 頻繁にバックアップすると、これらの成功メッセージがすぐに蓄積され、エラー ログが大きくなります。If you back up frequently, these success messages will accumulate quickly, resulting in huge error logs! そのために、他のメッセージを探すのが困難になることがあります。This can make finding other messages difficult. そのような場合、これらのエントリに依存するスクリプトがなければ、トレース フラグ 3226 を使用することによってこれらのバックアップ ログ エントリを除外できます。In such cases, you can suppress these backup log entries by using trace flag 3226 if none of your scripts depend on those entries. 詳細については、「トレース フラグ (Transact-SQL)」を参照してください。For more information, see Trace Flags (Transact-SQL).

セキュリティSecurity

データベースのバックアップでは、TRUSTWORTHY は OFF に設定されます。TRUSTWORTHY is set to OFF on a database backup. TRUSTWORTHY を ON に設定する方法については、「ALTER DATABASE の SET オプション (Transact-SQL)」を参照してください。For information about how to set TRUSTWORTHY to ON, see ALTER DATABASE SET Options (Transact-SQL).

SQL Server 2012 (11.x)SQL Server 2012 (11.x) 以降では、バックアップの作成での PASSWORD および MEDIAPASSWORD オプションが廃止されました。Beginning with SQL Server 2012 (11.x)SQL Server 2012 (11.x), the PASSWORD and MEDIAPASSWORD options are discontinued for creating backups. パスワード付きで作成されたバックアップを復元することは、引き続き可能です。You can still restore backups created with passwords.

PermissionsPermissions

BACKUP DATABASE および BACKUP LOG アクセス許可は、既定では、sysadmin 固定サーバー ロール、db_owner 固定データベース ロール、および db_backupoperator 固定データベース ロールのメンバーに与えられます。BACKUP DATABASE and BACKUP LOG permissions default to members of the sysadmin fixed server role and the db_owner and db_backupoperator fixed database roles.

バックアップ デバイスの物理ファイルに対する所有と許可の問題によって、バックアップ操作が妨げられることがあります。Ownership and permission problems on the backup device's physical file can interfere with a backup operation. SQL ServerSQL Server サービスでは、デバイスに対して読み書きを実行できる必要があります。つまり、SQL ServerSQL Server サービスが実行されているアカウントには、バックアップ デバイスに対する書き込み権限が必要です。The SQL ServerSQL Server service must be able to read and write to the device which means that the account under which the SQL ServerSQL Server service runs must have write permissions to the backup device. ただし、システム テーブルにバックアップ デバイスのエントリを追加する sp_addumpdeviceでは、ファイル アクセスの権限は確認されません。However, sp_addumpdevice, which adds an entry for a backup device in the system tables, does not check file access permissions. 結果として、バックアップ デバイスの物理ファイルに関する問題は、バックアップや復元が試行され、物理リソースがアクセスされるまで、表面化しない可能性があります。As a result, problems on the backup device's physical file may not appear until the physical resource is accessed when the backup or restore is attempted.

SQL Server Management Studio の使用Using SQL Server Management Studio

注意

SQL Server Management StudioSQL Server Management Studio を使用してバックアップ タスクを指定する場合、 [スクリプト] ボタンをクリックしてスクリプトの保存先を選択することにより、対応する Transact-SQLTransact-SQL BACKUP スクリプトを生成できます。When you specify a backup task by using SQL Server Management StudioSQL Server Management Studio, you can generate the corresponding Transact-SQLTransact-SQL BACKUP script by clicking the Script button and selecting a script destination.

  1. オブジェクト エクスプローラーで適切な MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engineのインスタンスに接続した後、サーバー ツリーを展開します。After connecting to the appropriate instance of the MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engine, in Object Explorer, expand the server tree.

  2. [データベース] を展開し、ユーザー データベースを選択するか、または [システム データベース] を展開してシステム データベースを選択します。Expand Databases, and either select a user database or expand System Databases and select a system database.

  3. バックアップするデータベースを右クリックし、 [タスク] をポイントして、 [バックアップ] をクリックします。Right-click the database that you wish to backup, point to Tasks, and then click Back Up....

  4. [データベースのバックアップ] ダイアログボックスで、選択したデータベースがドロップダウン リストに表示されます (これは、サーバー上の他の任意のデータベースに変更できます)。In the Back Up Database dialog box, the database that you selected appears in the drop-down list (which you can change to any other database on the server).

  5. [バックアップの種類] ドロップダウン リストで、目的のバックアップの種類 (既定値は [完全] ) を選択します。In the Backup type drop-down list, select the desired backup type - the default is Full.

    重要

    差分バックアップまたはトランザクション ログ バックアップを実行するには、事前にデータベースの完全バックアップを少なくとも 1 回実行する必要があります。You must perform at least one full database backup before you can perform a differential or a transaction log backup.

  6. [バックアップ コンポーネント][データベース] を選択します。Under Backup component, select Database.

  7. [バックアップ先] セクションで、バックアップ ファイルの既定の場所を確認します (../mssql/data フォルダー内)。In the Destination section, review the default location for the backup file (in the ../mssql/data folder).

    別のデバイスにバックアップするには、 [バックアップ先] ドロップダウン リストを使用して、選択内容を変更します。To backup to a different device, change the selection using the Back up to drop-down list. バックアップの速度を向上させるためにバックアップ セットを複数のファイルにストライプするには、 [追加] をクリックしてバックアップ オブジェクトやバックアップ先を追加します。To stripe the backup set across multiple files for increased backup speed, click Add to add additional backup objects and/or destinations.

    バックアップ先を削除するには、バックアップ先を選択して [削除] をクリックします。To remove a backup destination, select it and click Remove. 既存のバックアップ先の内容を表示するには、バックアップ先を選択して [内容] をクリックします。To view the contents of an existing backup destination, select it and click Contents.

  8. (省略可能) [メディア オプション][バックアップ オプション] のページで、その他の使用可能な設定を確認します。(optional) Review the other available settings under the Media Options and Backup Options pages.

    さまざまなバックアップ オプションの詳細については、[全般] ページ[メディア オプション] ページ[バックアップ オプション] ページを参照してください。For more information about the various backup options, see General page, Media options page, and Backup options page.

  9. [OK] をクリックしてバックアップを開始します。Click OK to initiate the backup.

  10. バックアップが正常に完了したら、 [OK] をクリックして SQL Server Management Studio のダイアログ ボックスを閉じます。When the backup completes successfully, click OK to close the SQL Server Management Studio dialog box.

関連情報Additional information

  • データベースの完全バックアップを作成したら、データベースの差分バックアップまたはトランザクション ログ バックアップを作成できます。After creating a full database backup, you can create a differential database backup or a transaction log backup.

  • (省略可能) [コピーのみのバックアップ] チェック ボックスをオンにして、コピーのみのバックアップを作成することもできます。(optional) You can select the Copy-only backup checkbox to create a copy-only backup. コピーのみのバックアップは、従来の SQL ServerSQL Server バックアップのシーケンスから独立した SQL ServerSQL Server バックアップです。A copy-only backup is a SQL ServerSQL Server backup that is independent of the sequence of conventional SQL ServerSQL Server backups. 詳細については、「コピーのみのバックアップ (SQL Server)」を参照してください。For more information, see Copy-Only Backups (SQL Server). コピーのみのバックアップは、 [差分] バックアップの種類には使用できません。A copy-only backup is not available for the Differential backup type.

  • URL にバックアップする場合は、 [メディア オプション] ページで、 [メディアに上書きします] が無効にされます。The Overwrite media option is disabled on the Media Options page if you are backing up to a URL.

使用例Examples

次の例では、次の Transact-SQL コードを使用してテスト データベースを作成します。For the following examples, create a test database with the following Transact-SQL code:

USE [master]
GO

CREATE DATABASE [SQLTestDB]
GO

USE [SQLTestDB]
GO
CREATE TABLE SQLTest
   (
      ID INT NOT NULL PRIMARY KEY,
      c1 VARCHAR(100) NOT NULL,
      dt1 DATETIME NOT NULL DEFAULT getdate()
   );
GO

USE [SQLTestDB]
GO

INSERT INTO SQLTest (ID, c1) VALUES (1, 'test1')
INSERT INTO SQLTest (ID, c1) VALUES (2, 'test2')
INSERT INTO SQLTest (ID, c1) VALUES (3, 'test3')
INSERT INTO SQLTest (ID, c1) VALUES (4, 'test4')
INSERT INTO SQLTest (ID, c1) VALUES (5, 'test5')
GO

SELECT * FROM SQLTest
GO

A.A. 既定の場所のディスクへの完全バックアップFull back up to disk to default location

この例では、SQLTestDB データベースを既定のバックアップ場所にあるディスクにバックアップします。In this example, the SQLTestDB database will be backed up to disk at the default backup location.

  1. オブジェクト エクスプローラーで適切な MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engineのインスタンスに接続した後、サーバー ツリーを展開します。After connecting to the appropriate instance of the MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engine, in Object Explorer, expand the server tree.

  2. [データベース] を展開して SQLTestDBを右クリックし、 [タスク] をポイントしてから [バックアップ] をクリックします。Expand Databases, right-click SQLTestDB, point to Tasks, and then click Back Up....

  3. [OK] をクリックします。Click OK.

  4. バックアップが正常に完了したら、 [OK] をクリックして SQL Server Management Studio のダイアログ ボックスを閉じます。When the backup completes successfully, click OK to close the SQL Server Management Studio dialog box.

SQL のバックアップを取得する

B.B. 既定以外の場所のディスクへの完全バックアップFull back up to disk to non-default location

この例では、ご自分で選択した場所にあるディスクに SQLTestDB データベースがバックアップされます。In this example, the SQLTestDB database will be backed up to disk at a location of your choice.

  1. オブジェクト エクスプローラーで適切な MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engineのインスタンスに接続した後、サーバー ツリーを展開します。After connecting to the appropriate instance of the MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engine, in Object Explorer, expand the server tree.

  2. [データベース] を展開して SQLTestDBを右クリックし、 [タスク] をポイントしてから [バックアップ] をクリックします。Expand Databases, right-click SQLTestDB, point to Tasks, and then click Back Up....

  3. [全般] ページの [バックアップ先] セクションで、 [バックアップ先] ドロップダウン リストから [ディスク] を選択します。On the General page in the Destination section select Disk from the Back up to: drop-down list.

  4. 既存のバックアップ ファイルがすべて削除されるまで、 [削除] を選択します。Select Remove until all existing backup files have been removed.

  5. [追加] を選択すると、 [バックアップ先の選択] ダイアログ ボックスが開きます。Select Add and the Select Backup Destination dialog box will open.

  6. [ファイル名] テキスト ボックスに有効なパスとファイル名を入力し、拡張子として .bak を使用することで、このファイルの分類を簡略化します。Enter a valid path and file name in the File name text box and use .bak as the extension to simplify the classification of this file.

  7. [OK] をクリックしてから、もう一度 [OK] をクリックしてバックアップを開始します。Click OK and then click OK again to initiate the backup.

  8. バックアップが正常に完了したら、 [OK] をクリックして SQL Server Management Studio のダイアログ ボックスを閉じます。When the backup completes successfully, click OK to close the SQL Server Management Studio dialog box.

DB の場所を変更する

C.C. 暗号化されたバックアップの作成Create an encrypted backup

この例では、SQLTestDB データベースを暗号化して既定のバックアップ場所にバックアップします。In this example, the SQLTestDB database will be backed up with encryption to the default backup location.

  1. オブジェクト エクスプローラーで適切な MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engineのインスタンスに接続した後、サーバー ツリーを展開します。After connecting to the appropriate instance of the MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engine, in Object Explorer, expand the server tree.

  2. [データベース][システム データベース] の順に展開し、master を右クリックして [新しいクエリ] をクリックします。これにより、ご利用の SQLTestDB データベースに接続した状態でクエリ ウィンドウが開きます。Expand Databases, expand System Databases, right-click master, and click New Query to open a query window with a connection to your SQLTestDB database.

  3. 次のコマンドを実行して、master データベース内にデータベース マスター キー証明書を作成します。Execute the following commands to create a database master key and a certificate within the master database.

    -- Create the master key
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';  
    
    -- If the master key already exists, open it in the same session that you create the certificate (see next step)
    OPEN MASTER KEY DECRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe'
    
    -- Create the certificate encrypted by the master key
    CREATE CERTIFICATE MyCertificate
    WITH SUBJECT = 'Backup Cert', EXPIRY_DATE = '20201031';  
    
  4. オブジェクト エクスプローラー[データベース] ノードで、SQLTestDB を右クリックし、 [タスク] をポイントしてから [バックアップ] をクリックします。In Object Explorer, in the Databases node, right-click SQLTestDB, point to Tasks, and then click Back Up....

  5. [メディア オプション] ページの [メディアを上書きする] セクションで、 [新しいメディア セットにバックアップし、すべての既存のバックアップ セットを消去する] をオンにします。On the Media Options page, in the Overwrite media section select Back up to a new media set, and erase all existing backup sets.

  6. [バックアップ オプション] ページの [暗号化] セクションで、 [バックアップを暗号化する] チェック ボックスをオンにします。On the Backup Options page in the Encryption section select the Encrypt backup check box.

  7. [アルゴリズム] ボックスの一覧から、 [AES 256] を選択します。From the Algorithm drop-down list, select AES 256.

  8. [証明書または非対称キー] ボックスの一覧で、 MyCertificateを選択します。From the Certificate or Asymmetric key drop-down list select MyCertificate.

  9. [OK] を選択します。Select OK.

暗号化されたバックアップ

D.D. Azure BLOB ストレージ サービスへのバックアップBack up to the Azure Blob storage service

以下の例では、Azure Blob Storage サービスへの SQLTestDB のデータベースの完全バックアップを実行します。The example below performs a full database backup of SQLTestDB to the Azure Blob storage service. この例では、BLOB コンテナーを含むストレージ アカウントを既に用意していることを前提としています。This example assumes that you already have a storage account with a blob container. この例では、共有アクセス署名が自動的に作成されます。この例では、既存の共有アクセス署名のあるコンテナーがないからです。This example creates a shared access signature for you; this example fails of the container has an existing shared access signature.

ストレージ アカウントに Azure BLOB コンテナーがない場合は、続行する前に作成してください。If you do not have an Azure blob container in a storage account, create one before continuing. 詳細については、「汎用ストレージアカウントの作成」と「コンテナーを作成する」を参照してください。For more information, see Create a general purpose storage account and Create a container.

  1. オブジェクト エクスプローラーで適切な MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engineのインスタンスに接続した後、サーバー ツリーを展開します。After connecting to the appropriate instance of the MicrosoftMicrosoft SQL Server データベース エンジンSQL Server Database Engine, in Object Explorer, expand the server tree.

  2. [データベース] を展開して SQLTestDBを右クリックし、 [タスク] をポイントしてから [バックアップ] をクリックします。Expand Databases, right-click SQLTestDB, point to Tasks, and then click Back Up....

  3. [全般] ページの [宛先] セクションで、 [バックアップ先] ドロップダウン リストから [URL] を選択します。On the General page in the Destination section select URL from the Back up to: drop-down list.

  4. [追加] をクリックすると、 [バックアップ先の選択] ダイアログ ボックスが開きます。Click Add and the Select Backup Destination dialog box will open.

  5. SQL Server Management Studio で使用する Azure ストレージ コンテナーを以前に登録したことがある場合は、それを選択します。If you have previously registered the Azure storage container that you wish to use with SQL Server Management Studio, select it. それ以外の場合は、 [新しいコンテナー] をクリックして新しいコンテナーを登録します。Otherwise, click New container to register a new container.

  6. [Microsoft サブスクリプションへの接続] ダイアログ ボックスで、ご利用のアカウントにサインインします。In the Connect to a Microsoft Subscription dialog box, sign in to your account.

  7. [ストレージ アカウントの選択] ドロップダウン テキスト ボックスで、ご利用のストレージ アカウントを選択します。In the Select Storage Account drop-down text box, select your storage account.

  8. [BLOB コンテナーの選択] ドロップダウン テキスト ボックスで、ご利用の BLOB コンテナーを選択します。In the Select Blob Container drop-down text box, select your blob container.

  9. [Shared Access Policy の有効期限] ドロップダウン カレンダー ボックスで、この例で作成した共有アクセスポリシーの有効期限を選択します。In the Shared Access Policy Expiration drop-down calendar box, select an expiration date for the shared access policy that you create in this example.

  10. SQL Server Management Studio で [資格情報の作成] をクリックして、共有アクセス署名と資格情報を生成します。Click Create Credential to generate a shared access signature and credential in SQL Server Management Studio.

  11. [OK] をクリックして、 [Microsoft サブスクリプションへの接続] ダイアログ ボックスを閉じます。Click OK close the Connect to a Microsoft Subscription dialog box.

  12. [バックアップ ファイル] テキスト ボックスで、バックアップ ファイルの名前を変更します (省略可能)。In the Backup File text box, modify the name of the backup file (optional).

  13. [OK] をクリックして [バックアップ先の選択] ダイアログ ボックスを閉じます。Click OK to close the Select a backup destination dialog box.

  14. [OK] をクリックしてバックアップを開始します。Click OK to initiate the backup.

  15. バックアップが正常に完了したら、 [OK] をクリックして SQL Server Management Studio のダイアログ ボックスを閉じます。When the backup completes successfully, click OK to close the SQL Server Management Studio dialog box.

Transact-SQL の使用Using Transact-SQL

次の項目を指定して BACKUP DATABASE ステートメントを実行し、データベースの完全バックアップを作成します。Create a full database backup by executing the BACKUP DATABASE statement to create the full database backup, specifying:

  • バックアップするデータベースの名前。The name of the database to back up.
  • データベースの完全バックアップを書き込むバックアップ デバイス。The backup device where the full database backup is written.

データベースの完全バックアップのための Transact-SQLTransact-SQL の基本構文を次に示します。The basic Transact-SQLTransact-SQL syntax for a full database backup is:

BACKUP DATABASE database TO backup_device [ , ...n ] [ WITH with_options [ , ...o ] ] ;BACKUP DATABASE database TO backup_device [ ,...n ] [ WITH with_options [ ,...o ] ] ;

オプションOption [説明]Description
databasedatabase バックアップするデータベースです。Is the database that is to be backed up.
backup_device [ , ...n ]backup_device [ ,...n ] バックアップ操作に使用する 1 ~ 64 個のバックアップ デバイスの一覧を指定します。Specifies a list of from 1 to 64 backup devices to use for the backup operation. 物理バックアップ デバイスを指定したり、対応する論理バックアップ デバイス (既に定義されている場合) を指定したりできます。You can specify a physical backup device, or you can specify a corresponding logical backup device, if already defined. 物理バックアップ デバイスを指定するには、DISK オプションまたは TAPE オプションを使用します。To specify a physical backup device, use the DISK or TAPE option:

{ DISK | TAPE } = physical_backup_device_name{ DISK | TAPE } =physical_backup_device_name

詳細については、「 バックアップ デバイス (SQL Server)」を参照してください。For more information, see Backup Devices (SQL Server).
WITH with_options [ , ...o ]WITH with_options [ ,...o ] 必要に応じて、1 つ以上の追加オプション ( o) を指定します。Optionally, specifies one or more additional options, o. 基本的な with オプションについては、手順 2. を参照してください。For information about some of the basic with options, see step 2.

必要に応じて、1 つ以上の WITH オプションを指定します。Optionally, specify one or more WITH options. ここでは、一部の基本的な WITH オプションについて説明します。A few basic WITH options are described here. すべての WITH オプションについては、「BACKUP (Transact-SQL)」を参照してください。For information about all the WITH options, see BACKUP (Transact-SQL).

基本的なバックアップ セットの WITH オプション:Basic backup set WITH options:

  • { COMPRESSION | NO_COMPRESSION } :SQL Server 2008 EnterpriseSQL Server 2008 Enterprise 以降でのみ、このバックアップで バックアップの圧縮 を実行するかどうかを指定し、サーバー レベルの既定値をオーバーライドできます。{ COMPRESSION | NO_COMPRESSION }: In SQL Server 2008 EnterpriseSQL Server 2008 Enterprise and later only, specifies whether backup compression is performed on this backup, overriding the server-level default.
  • ENCRYPTION (ALGORITHM, SERVER CERTIFICATE | ASYMMETRIC KEY) : SQL Server 2014 以降でのみ、使用する暗号化アルゴリズムと暗号化の保護に使用する証明書または非対称キーを指定します。ENCRYPTION (ALGORITHM, SERVER CERTIFICATE | ASYMMETRIC KEY): In SQL Server 2014 or later only, specify the encryption algorithm to use, and the Certificate or Asymmetric key to use to secure the encryption.
  • DESCRIPTION = { ' text ' | @ text_variable }:バックアップ セットを記述したテキストを自由な形式で指定します。DESCRIPTION = { 'text' | @text_variable }: Specifies the free-form text that describes the backup set. 文字列の長さは最大 255 文字です。The string can have a maximum of 255 characters.
  • NAME = { backup_set_name | @ backup_set_name_var } :バックアップ セットの名前を指定します。NAME = { backup_set_name | @backup_set_name_var }: Specifies the name of the backup set. 名前の長さは最大 128 文字です。Names can have a maximum of 128 characters. NAME を指定しないと、名前は空白になります。If NAME is not specified, it is blank.

既定では、BACKUP ではバックアップが既存のメディア セットに追加されて、既存のバックアップ セットが保持されます。By default, BACKUP appends the backup to an existing media set, preserving existing backup sets. これを明示的に指定するには、NOINIT オプションを使用します。To explicitly specify this, use the NOINIT option. 既存のバックアップ セットへの追加については、「 メディア セット、メディア ファミリ、およびバックアップ セット (SQL Server)」を参照してください。For information about appending to existing backup sets, see Media Sets, Media Families, and Backup Sets (SQL Server).

また、FORMAT オプションを使用して、バックアップ メディアをフォーマットすることもできます。Alternatively, to format the backup media, use the FORMAT option:

FORMAT [ , MEDIANAME = { media_name | @ media_name_variable } ] [ , MEDIADESCRIPTION = { text | @ text_variable } ]FORMAT [ , MEDIANAME = { media_name | @media_name_variable } ] [ , MEDIADESCRIPTION = { text | @text_variable } ]

FORMAT 句は、バックアップ メディアを初めて使用する場合や既存のデータをすべて上書きする場合に使用します。Use the FORMAT clause when you are using media for the first time or you want to overwrite all existing data. 必要に応じて、新しいメディアにメディア名と説明を割り当てます。Optionally, assign the new media a media name and description.

重要

BACKUP ステートメントで FORMAT 句を使用すると、バックアップ メディアに格納されているバックアップが破棄されるので、十分注意して使用してください。Use extreme caution when you are using the FORMAT clause of the BACKUP statement because this destroys any backups that were previously stored on the backup media.

使用例Examples

次の例では、次の Transact-SQL コードを使用してテスト データベースを作成します。For the following examples, create a test database with the following Transact-SQL code:

USE [master]
GO

CREATE DATABASE [SQLTestDB]
GO

USE [SQLTestDB]
GO
CREATE TABLE SQLTest (
   ID INT NOT NULL PRIMARY KEY,
   c1 VARCHAR(100) NOT NULL,
   dt1 DATETIME NOT NULL DEFAULT GETDATE()
)
GO

USE [SQLTestDB]
GO

INSERT INTO SQLTest (ID, c1) VALUES (1, 'test1')
INSERT INTO SQLTest (ID, c1) VALUES (2, 'test2')
INSERT INTO SQLTest (ID, c1) VALUES (3, 'test3')
INSERT INTO SQLTest (ID, c1) VALUES (4, 'test4')
INSERT INTO SQLTest (ID, c1) VALUES (5, 'test5')
GO

SELECT * FROM SQLTest
GO

A.A. ディスク デバイスへのバックアップBack up to a disk device

次の例では、新しいメディア セットを作成する SQLTestDB を使用して、 FORMAT データベース全体をディスクにバックアップします。The following example backs up the complete SQLTestDB database to disk, by using FORMAT to create a new media set.

USE SQLTestDB;
GO
BACKUP DATABASE SQLTestDB
TO DISK = 'c:\tmp\SQLTestDB.bak'
   WITH FORMAT,
      MEDIANAME = 'SQLServerBackups',
      NAME = 'Full Backup of SQLTestDB';
GO

B.B. テープ デバイスへのバックアップBack up to a tape device

次の例では、 SQLTestDB データベース全体をテープにバックアップし、以前のバックアップに追加します。The following example backs up the complete SQLTestDB database to tape, appending the backup to the previous backups.

USE SQLTestDB;
GO
BACKUP DATABASE SQLTestDB
   TO TAPE = '\\.\Tape0'
   WITH NOINIT,
      NAME = 'Full Backup of SQLTestDB';
GO

C.C. 論理テープ デバイスへのバックアップBack up to a logical tape device

次の例では、テープ ドライブ用の論理バックアップ デバイスを作成した後、The following example creates a logical backup device for a tape drive. そのデバイスに SQLTestDB データベース全体をバックアップします。The example then backs up the complete SQLTestDB database to that device.

-- Create a logical backup device,
-- SQLTestDB_Bak_Tape, for tape device \\.\tape0.
USE master;
GO
EXEC sp_addumpdevice 'tape', 'SQLTestDB_Bak_Tape', '\\.\tape0'; USE SQLTestDB;
GO
BACKUP DATABASE SQLTestDB
   TO SQLTestDB_Bak_Tape
   WITH FORMAT,
      MEDIANAME = 'SQLTestDB_Bak_Tape',
      MEDIADESCRIPTION = '\\.\tape0',
      NAME = 'Full Backup of SQLTestDB';
GO

PowerShell の使用Using PowerShell

Backup-SqlDatabase コマンドレットを使用します。Use the Backup-SqlDatabase cmdlet. データベースの完全バックアップであることを明示するには、 -BackupAction パラメーターにその既定値 Database を指定します。To explicitly indicate that this is a full database backup, specify the -BackupAction parameter with its default value, Database. このパラメーターは、データベースの完全バックアップでは省略可能です。This parameter is optional for full database backups.

注意

これらの例では、SqlServer モジュールが必要です。These examples require the SqlServer module. それがインストールされているかどうかを判断するには、Get-Module -Name SqlServer を実行します。To determine if it is installed, run Get-Module -Name SqlServer. このモジュールをインストールするには、PowerShell の管理者セッションで Install-Module -Name SqlServer を実行します。To install this module, run Install-Module -Name SqlServer in an administrator session of PowerShell.

詳細については、「 SQL Server PowerShell プロバイダー」を参照してください。For more information, see SQL Server PowerShell Provider.

重要

SQL Server Management Studio 内から PowerShell ウィンドウを開いて SQL Server のインストールに接続する場合、PowerShell とご利用の SQL Server インスタンスとの接続の確立には SSMS 内のご利用の資格情報が自動的に使用されるので、この例の資格情報の部分は省略できます。If you are opening a PowerShell window from within SQL Server Management Studio to connect to an installation of SQL Server, you can omit the credential portion of this example as your credential in SSMS is automatically used to establish the connection between PowerShell and your SQL Server instance.

使用例Examples

A.A. 完全バックアップ (ローカル)Full backup (local)

次の例では、 <myDatabase> データベースの完全なバックアップを、サーバー インスタンス Computer\Instanceの既定のバックアップ場所に作成します。The following example creates a full database backup of the <myDatabase> database to the default backup location of the server instance Computer\Instance. オプションで、この例では -BackupAction Databaseを指定します。Optionally, this example specifies -BackupAction Database.

完全な構文とその他の例については、「Backup-SqlDatabase」を参照してください。For the full syntax and additional examples, see Backup-SqlDatabase.

$credential = Get-Credential

Backup-SqlDatabase -ServerInstance Computer[\Instance] -Database <myDatabase> -BackupAction Database -Credential $credential

B.B. Azure への完全バックアップFull backup to Azure

次の例では、Azure Blob Storage サービスに <myDatabase> インスタンスのデータベース <myServer> の完全バックアップを作成します。The following example creates a full backup of the database <myDatabase> on the <myServer> instance to the Azure Blob Storage service. 保存されたアクセス ポリシーは読み取り、書き込み、および一覧表示権で作成されています。A stored access policy has been created with read, write, and list rights. SQL Server 資格情報 https://<myStorageAccount>.blob.core.windows.net/<myContainer>は、保存されたアクセス ポリシーに関連付けられている Shared Access Signature を使用して作成されています。The SQL Server credential, https://<myStorageAccount>.blob.core.windows.net/<myContainer>, was created using a Shared Access Signature that is associated with the Stored Access Policy. PowerShell コマンドでは BackupFile パラメーターを使用して、場所 (URL) とバックアップ ファイル名を指定します。The PowerShell command uses the BackupFile parameter to specify the location (URL) and the backup file name.

$credential = Get-Credential
$container = 'https://<myStorageAccount>blob.core.windows.net/<myContainer>'
$fileName = '<myDatabase>.bak'
$server = '<myServer>'
$database = '<myDatabase>
$backupFile = $container + '/' + $fileName

Backup-SqlDatabase -ServerInstance $server -Database $database -BackupFile $backupFile -Credential $credential

関連タスクRelated tasks

参照See also