Príznaky
Obnovenie komprimovanej databázy alebo záloh denníkov databáz, ktoré majú povolené transparentné šifrovanie údajov (TDE), v Microsoft SQL Serveri 2019 môže spôsobiť nasledujúcu chybu:
Msg 3241, level 16, State 18, Line <LineNumber>
Skupina médií v zariadení <názov záložného súboru> je nesprávne vytvorená. SQL Server nemôže spracovať túto skupinu médií.
Alternatívne riešenie
Ak chcete tento problém obísť, nekomprimujte zálohy databáz s podporou TDE pomocou niektorého z nasledujúcich postupov:
-
Použite funkciu WITH COMPRESSION, ako je popísané v časti BACKUP (Transact-SQL).
-
Spoľahnite sa na predvolené nastavenie kompresie zálohovania, ako je popísané v časti Zobraziť alebo Konfigurovať predvolenú možnosť konfigurácie servera kompresie zálohovania.
Riešenie
Informácie o kumulatívnej aktualizácii
Tento problém je opravený v nasledujúcej kumulatívnej aktualizácii pre SQL Server:
Kumulatívna aktualizácia 16 pre SQL Server 2019
Poznámka: Ak sa chcete vyhnúť problému, musíte vytvoriť zálohy spolu s touto opravou. Inštalácia pevnej CU v cieľovej inštancii a pokus o obnovenie rovnakej zálohy vytvorenej bez opravy nebude fungovať.
Ďalšie informácie
Dôležité: Počnúc SQL Serverom 2019 CU16 bude vytváranie komprimovaných záloh (databáza alebo denník) databáz s podporou TDE používať nový formát zálohovania, ktorý je možné obnoviť len v inštancii, ktorá má nainštalovanú cu16 alebo novšiu verziu.
Obnovenie komprimovanej zálohy databázy s podporou TDE vytvorenej na cu16 alebo novšej inštancii SQL Servera 2019 verzie CU15 alebo staršej zlyhá a spôsobí nasledujúce chyby:
-
OBNOVIŤ DATABÁZU
Msg 3013, level 16, State 1, Line <LineNumber>
Obnovenie databázy sa ukončí abnormálne.
Msg 9004, level 21, State 1, Line <LineNumber>
Počas spracovania denníka databázy "TDE_DB" sa vyskytla chyba. Ak je to možné, obnovte ju zo zálohy. Ak záloha nie je k dispozícii, pravdepodobne bude potrebné znova zostaviť denník.
-
DENNÍK OBNOVENIA
Umiestnenie: mediaRead.cpp:1018
Výraz: readSize <= m_Demand
SPID: 84
Identifikácia procesu: ProcessID
Msg 3013, level 16, State 1, Line <LineNumber>
Denník obnovenia sa ukončil nezvyčajne.
Msg 3624, level 20, State 1, Line <LineNumber>
Kontrola kontrolného výrazu systému zlyhala. Podrobnosti nájdete v denníku chýb SQL Servera. Zlyhanie kontrolného výrazu je zvyčajne spôsobené chybou softvéru alebo poškodením údajov. Ak chcete skontrolovať poškodenie databázy, zvážte spustenie databázy DBCC CHECKDB. Ak ste súhlasili s odoslaním výpisov do spoločnosti Microsoft počas inštalácie, spoločnosti Microsoft sa odošle minisúdací výpis. Aktualizácia môže byť od spoločnosti Microsoft k dispozícii v najnovšom balíku Service Pack alebo v rýchlej oprave od technickej podpory.
Poznámka: FUNKCIA RESTORE HEADERONLY a RESTORE FILELISTONLY nie sú týmto problémom ovplyvnené a bude fungovať vo všetkých prípadoch.
Funkcia RESTORE VERIFYONLY sa môže úspešne vrátiť pre úplnú zálohu, ktorá je neplatná podľa vyššie uvedeného scenára: nespoliehajte sa na obnovenie VERIFYONLY, aby ste zistili, že zálohu je možné obnoviť bez toho, aby ste narazili na vyššie uvedený problém. FUNKCIA RESTORE VERIFYONLY voči zálohe denníka zvyčajne zlyhá spolu s rovnakou chybou ako samotný denník obnovenia popísaný vyššie.
Preto je dôležité zabezpečiť, aby v kontexte, v ktorom môžu byť povolené TDE a kompresia zálohovania, všetky inštancie SQL Servera 2019, ktoré používajú zálohy z iných inštancií SQL Servera 2019, dostali CU16 (alebo novšiu) pred inštanciami, ktoré generujú záložný materiál. Architektúry prepravy denníkov by boli ukážkovým príkladom takejto situácie: najskôr inovovať sekundárne inštancie.
Po vytvorení zálohovania denníka transakcií pomocou kompresie ho zvyčajne nie je možné znova vytvoriť bez kompresie. Inovácia primárneho servera doručenia denníka na SQL Server 2019 CU16 alebo novšiu v takomto kontexte by preto prerušila obnovovanie úloh, kým sa neaktualizuje aj sekundárny server.
Nekomprimovaná záloha databázy s podporou TDE, komprimovaná záloha databázy, ktorá nie je povolená pre TDE, alebo nekomprimovaná záloha databázy, ktorá nie je povolená pre TDE, nebude používať nový formát zálohovania zavedený v CU16 a bude možné obnoviť inštanciu SQL Servera 2019 v ktorejkoľvek verzii.
Preto je potrebné vypnúť záložnú kompresiu, ak plánujete obnoviť databázový materiál podporujúci TDE (úplné zálohovanie alebo zálohovanie denníka transakcií) na všetky inštancie SQL Servera starších verzií pred SQL Serverom 2019 CU16.
Každá nová kumulatívna aktualizácia SQL Servera obsahuje všetky rýchle opravy a opravy zabezpečenia, ktoré boli v predchádzajúcej zostave. Odporúčame nainštalovať najnovšiu zostavu pre svoju verziu SQL Servera:
Stav
Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.
Odkazy
Získajte informácie o terminológii, ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru.