バックアップ中または復元中にバックアップ チェックサムを有効または無効にする (SQL Server)
適用対象: SQL Server
この記事では、SQL Server Management Studio または Transact-SQL を使用して、SQL Server のデータベースをバックアップまたは復元するときにバックアップ チェックサムを無効にする方法について説明します。
アクセス許可
BACKUP
BACKUP DATABASE
および BACKUP LOG
アクセス許可は、既定では、sysadmin 固定サーバー ロール、db_owner 固定データベース ロール、および db_backupoperator 固定データベース ロールのメンバーに与えられます。
バックアップ デバイスの物理ファイルに対する所有と許可の問題によって、バックアップ操作が妨げられることがあります。 SQL Server では、デバイスに対して読み書きを実行できる必要があります。 SQL Server サービスが実行されているアカウントには書き込み権限が必要です。 ただし、システム テーブルにバックアップ デバイスのエントリを追加する sp_addumpdevice では、ファイルのアクセス許可がチェックされません。 バックアップ デバイスの物理ファイルに関するこのような問題は、バックアップや復元が試行され、物理リソースがアクセスされるまで、表面化しない可能性があります。
RESTORE
復元するデータベースが存在しない場合、RESTORE
を実行するには、ユーザーに CREATE DATABASE
アクセス許可が必要です。 データベースが存在する場合、RESTORE
アクセス許可は既定で、sysadmin および dbcreator の固定サーバー ロールのメンバーと、データベースのオーナー (dbo) に付与されます (FROM DATABASE_SNAPSHOT
オプションを使用する場合、データベースは常に存在します)。
RESTORE
アクセス許可は、サーバーでメンバーシップ情報を常に確認できるロールに与えられます。 固定データベース ロールのメンバーシップは、データベースがアクセス可能で破損していない場合にのみチェックできますが、これは RESTORE
の実行時に必ずしも保証されないため、db_owner 固定データベース ロールのメンバーには RESTORE
アクセス許可は付与されません。
SQL Server Management Studio を使用します。
バックアップ操作中にバックアップ チェックサムを有効または無効にする
「 データベースのバックアップを作成する」の手順に従います。
[オプション] ページの [信頼性] セクションで、[メディアに書き込む前にチェックサムを実行] を選択します。
Transact-SQL の使用
バックアップ操作のバックアップ チェックサムを有効または無効にする
データベース エンジンに接続します。
標準バーから、 [新しいクエリ] を選択します。
BACKUP (Transact-SQL) ステートメントでバックアップ チェックサムを有効にするには、
WITH CHECKSUM
オプションを指定します。 バックアップ チェックサムを無効にするには、WITH NO_CHECKSUM
オプションを指定します。 これは圧縮されたバックアップ以外の既定の動作です。 次の例では、チェックサムを実行するように指定します。
BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH CHECKSUM;
GO
復元操作のバックアップ チェックサムを有効または無効にする
データベース エンジンに接続します。
標準バーから、 [新しいクエリ] を選択します。
RESTORE ステートメント (Transact-SQL) ステートメントでバックアップ チェックサムを有効にするには、
WITH CHECKSUM
オプションを指定します。 これは圧縮されたバックアップの既定の動作です。 バックアップ チェックサムを無効にするには、WITH NO_CHECKSUM
オプションを指定します。 これは圧縮されたバックアップ以外の既定の動作です。 次の例では、バックアップ チェックサムを実行するように指定します。
RESTORE DATABASE AdventureWorks2022
FROM DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH CHECKSUM;
GO
警告
復元操作に対し CHECKSUM
を明示的に要求し、バックアップにバックアップ チェックサムが含まれている場合、既定のケースと同様に、バックアップ チェックサムおよびページ チェックサムの両方が検証されます。 ただし、バックアップ セットにバックアップ チェックサムがない場合、復元操作は失敗し、チェックサムがないことを示すメッセージが表示されます。
関連するコンテンツ
- RESTORE ステートメント - FILELISTONLY (Transact-SQL)
- RESTORE ステートメント - HEADERONLY (Transact-SQL)
- RESTORE ステートメント - LABELONLY (Transact-SQL)
- RESTORE ステートメント - VERIFYONLY (Transact-SQL)
- BACKUP (Transact-SQL)
- backupset (Transact-SQL)
- RESTORE ステートメント - 引数 (Transact-SQL)
- バックアップと復元中に発生する可能性のあるメディアエラー(SQL Server)
- エラー後にバックアップまたは復元を続行するか中止するかを指定する