更新:@AmitBanerjee -Microsoft SQL Server製品グループのシニアプログラムマネージャーは、MSが問題であることを調査することを確認しました。
TDEを有効にし、MAXTRANSFERSIZE
> 65536 を使用してSQL Server 2016で作成したバックアップを復元するときに問題が発生しましたか(私の場合、TDEデータベースを圧縮できるように65537を選択しました)CHECKSUM
。
以下は再現です:
--- create database
create database test_restore
go
-- create table
create table test_kin (fname char(10))
go
-- Enable TDE
use master
GO
CREATE CERTIFICATE test_restore WITH SUBJECT = 'test_restore_cert'
GO
SELECT name, pvt_key_encryption_type_desc, * FROM sys.certificates WHERE name = 'test_restore'
GO
use test_restore
go
CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER CERTIFICATE test_restore
GO
alter database test_restore set encryption ON
完全なコピーのみのバックアップを取る.. 2回実行する..
backup database test_restore
to disk = 'D:\temporary-short-term\test_restore_KIN_test_restore_1.bak' -- change as per your location !!
with init, stats =10 -- overwrite ..using INIT !!
, maxtransfersize = 65537
, compression
,CHECKSUM
さあverifyonly
...
restore verifyonly from disk = 'D:\temporary-short-term\test_restore_KIN_test_restore_1.bak'
エラーメッセージ :
メッセージ3241、レベル16、状態40、行11デバイス 'D:\ temporary-short-term \ test_restore_KIN_test_restore_1.bak'のメディアファミリの形式が正しくありません。SQL Serverはこのメディアファミリを処理できません。メッセージ3013、レベル16、状態1、行11 VERIFY DATABASEが異常終了しています。
異なる組み合わせでの結果(1 =オン、0 =オフ):
+-------------------------+-------------+----------+--------+
| MAXTRANSFERSIZE (65537) | COMPRESSION | CHECKSUM | RESULT |
+-------------------------+-------------+----------+--------+
| 1 | 1 | 1 | FAIL |
| 1 | 1 | 0 | PASS |
| 1 | 0 | 1 | FAIL |
| 0 | 0 | 0 | PASS |
| 0 | 1 | 1 | PASS |
| 0 | 1 | 0 | PASS |
+-------------------------+-------------+----------+--------+
この問題は次の場所で発生します:
Microsoft SQL Server 2016(RTM-CU1)(KB3164674)-13.0.2149.0(X64)2016年7月11日22:05:22著作権(c)Microsoft Corporation Enterprise Edition(64ビット)on Windows Server 2012 R2 Standard 6.3(Build 9600 :)
FORMAT
ヘッダーも上書きし、を使用すると発生しませんFORMAT
。それでも、INITMAXTRANSFERSIZE
とCHECKSUM
一緒に使用するとバックアップヘッダー(または全体としてのバックアップ)が破損するのはなぜか、これは謎です。これは以前のバージョンでは決して発生しませんでしたが、それらにはありませんでしたMAXTRANSFERSIZE
。ご回答有難うございます。誰かがより多くの情報を持っている場合、これを開いたままにします。