Jelenségek
A Microsoft SQL Server 2019-ben a transzparens adattitkosítással (TDE) rendelkező adatbázisok tömörített adatbázisának vagy naplóinak biztonsági másolatainak visszaállítása a következő hibát okozhatja:
Msg 3241, Level 16, State 18, Line <LineNumber>
Az eszköz "<biztonságimásolat-fájlnév>" médiacsaládja helytelenül van formázva. Az SQL Server nem tudja feldolgozni ezt az adathordozó-családot.
Kerülő megoldás
A probléma megkerüléséhez ne tömörítse a TDE-kompatibilis adatbázisok biztonsági másolatait az alábbi módszerek egyikével:
-
A WITH COMPRESSION függvényt a BACKUP (Transact-SQL) szakaszban leírtak szerint használhatja.
-
A biztonsági mentés tömörítésének alapértelmezett beállítását a nézetben vagy a biztonsági mentés tömörítésének alapértelmezett kiszolgálókonfigurációs beállításának konfigurálását ismertető szakaszban leírtak szerint használhatja.
Megoldás
Kumulatív frissítési információk
Ezt a problémát az SQL Server következő összegző frissítésében javítottuk:
Az SQL Server 2019 16-os összegző frissítése
Megjegyzés: A probléma elkerülése érdekében a biztonsági másolatokat ezzel a javítással együtt kell létrehoznia. Ha telepíti a rögzített CU-t a célpéldányra, és megpróbálja visszaállítani ugyanazt a biztonsági másolatot, amelyet a javítás nélkül hozott létre, nem fog működni.
További információ
Fontos: Az SQL Server 2019 CU16-tól kezdődően a TDE-kompatibilis adatbázisok tömörített biztonsági másolatainak (adatbázisának vagy naplójának) létrehozása egy új biztonsági mentési formátumot fog használni, amely csak olyan példányon állítható vissza, amelyen CU16 vagy újabb verzió van telepítve.
A CU16-os vagy újabb verziójú SQL Server 2019-példányon létrehozott, TDE-kompatibilis adatbázis tömörített biztonsági másolatának visszaállítása sikertelen, és a következő hibákat okozza:
-
ADATBÁZIS VISSZAÁLLÍTÁSA
Msg 3013, Level 16, State 1, Line <LineNumber>
A RESTORE DATABASE rendellenesen leáll.
Msg 9004, Level 21, State 1, Line <LineNumber>
Hiba történt a TDE_DB adatbázis naplójának feldolgozása közben. Ha lehetséges, állítsa vissza a biztonsági másolatból. Ha nem áll rendelkezésre biztonsági másolat, szükség lehet a napló újraépítésére.
-
VISSZAÁLLÍTÁSI NAPLÓ
Hely: mediaRead.cpp:1018
Kifejezés: readSize <= m_Demand
SPID: 84
Folyamatazonosító: ProcessID
Msg 3013, Level 16, State 1, Line <LineNumber>
A RESTORE LOG rendellenesen leáll.
Msg 3624, Level 20, State 1, Line <LineNumber>
Nem sikerült ellenőrizni a rendszer helyességi feltételét. A részletekért tekintse meg az SQL Server hibanaplójában. A helyességi feltétel hibáját általában szoftverhiba vagy adatsérülés okozza. Az adatbázis sérülésének ellenőrzéséhez fontolja meg a DBCC CHECKDB futtatását. Ha beleegyezett, hogy a telepítés során memóriaképeket küld a Microsoftnak, a rendszer egy mini memóriaképet küld a Microsoftnak. Előfordulhat, hogy egy frissítés elérhető a Microsofttól a legújabb szervizcsomagban vagy a technikai támogatási szolgálat gyorsjavításában.
Megjegyzés: A HEADERONLY és a RESTORE FILELISTONLY visszaállítást a probléma nem érinti, és minden esetben működni fog.
A RESTORE VERIFYONLY a fenti forgatókönyvnek megfelelően érvénytelen teljes biztonsági mentés esetén sikeresen visszatérhet: ne támaszkodjon a RESTORE VERIFYONLY függvényre annak megállapításához, hogy a biztonsági másolat a fenti probléma elhárítása nélkül állítható vissza. A RESTORE VERIFYONLY művelet a napló biztonsági mentésével együtt általában ugyanazzal a hibával meghiúsul, mint a fent leírt tényleges VISSZAÁLLÍTÁSI NAPLÓ.
Ezért fontos meggyőződni arról, hogy olyan környezetben, ahol engedélyezhető a TDE és a biztonsági mentés tömörítése, a más SQL Server 2019-példányokról biztonsági másolatokat használó SQL Server 2019-példányok cu16(vagy újabb) cu16-ot kapnak a biztonsági mentési anyagot létrehozó példányok előtt. A naplóátviteli architektúrák kiváló példái lehetnek egy ilyen helyzetnek: először a másodlagos példányok frissítése.
A tranzakciónapló tömörítéssel történő biztonsági mentése után általában nem lehet újra létrehozni tömörítés nélkül. Ezért a naplóátviteli elsődleges kiszolgáló SQL Server 2019 CU16-os vagy újabb verziójára való ilyen környezetben való frissítése megszakítaná a visszaállítási feladatokat, amíg a másodlagos kiszolgálót is nem frissíti.
A TDE-kompatibilis adatbázisok tömörítetlen biztonsági mentése, a TDE-hez nem engedélyezett adatbázisok tömörített biztonsági mentése vagy a TDE-n nem engedélyezett adatbázisok tömörítetlen biztonsági mentése nem a CU16-ban bevezetett új biztonsági mentési formátumot használja, és bármely verzió SQL Server 2019-példányán visszaállítható.
Ezért le kell tiltani a biztonsági mentés tömörítését, ha TDE-kompatibilis adatbázisanyagot (teljes biztonsági mentést vagy tranzakciónapló biztonsági mentését) kíván visszaállítani a korábbi verziók sql Server-példányaiba az SQL Server 2019 CU16 előtt.
Az SQL Server minden új összegző frissítése tartalmazza az előző buildben található összes gyorsjavítást és biztonsági javítást. Javasoljuk, hogy telepítse az SQL Server legújabb verzióját:
Állapot
A Microsoft megerősítette, hogy ez a probléma „A következőkre vonatkozik:” részben felsorolt Microsoft-termékekre vonatkozik.
Hivatkozások
Megismerheti a Microsoft által a szoftverfrissítések leírására használt terminológiát.