Simptome
U sistemu Microsoft SQL Server 2019 vraćanje komprimovane baze podataka ili evidencija rezervnih kopija baza podataka koje imaju omogućeno prozirno šifrovanje podataka (TDE) može da izazove sledeću grešku:
Msg 3241, nivo 16, država 18, line <LineNumber>
Porodica medija na uređaju "<rezervne kopije>" nije ispravno oblikovana. SQL Server ne može da obradi ovu porodicu medija.
Zaobilaženje problema
Da biste zaobišli ovaj problem, nemojte da komprimujete rezervne kopije baza podataka omogućenih za TDE pomoću bilo kog od sledećih metoda:
-
Koristite WITH COMPRESSION kao što je opisano u članku BACKUP (Transact-SQL).
-
Oslonite se na podrazumevano komprimovanje rezervne kopije kao što je opisano u članku Prikaz ili Konfigurisanje podrazumevane opcije konfiguracije komprimovanja rezervne kopije.
Rezoluciju
Kumulativne informacije o ažuriranju
Ovaj problem je rešen u sledećoj kumulativnim ispravkama za SQL Server:
Kumulativna ispravka 16 za SQL Server 2019
Beleške Morate da kreirate rezervne kopije zajedno sa ovim rešenjem da biste izbegli problem. Instaliranje fiksnog cu na ciljnoj instanci i pokušaj vraćanja iste rezervne kopije kreirane bez popravke neće funkcionisati.
Više informacija
Važno: Počevši od sistema SQL Server 2019 CU16, pravljenje komprimovanih rezervnih kopija (baza podataka ili evidencija) baza podataka omogućenih za TDE koristiće novi format rezervne kopije koji se može vratiti u prethodno stanje samo na instanci koja ima instaliran CU16 ili noviju verziju.
Vraćanje komprimovane rezervne kopije baze podataka omogućene za TDE koja je kreirana u cu16 ili novijoj verziji programa SQL Server 2019 verzije CU15 ili starije verzije ne uspeva i dovodi do sledećih grešaka:
-
VRAĆANJE BAZE PODATAKA U PRETHODNO STANJE
Msg 3013, nivo 16, stanje 1, linijski <LineNumber>
VRAĆANJE BAZE PODATAKA U PRETHODNO STANJE se nenormalno prekida.
Msg 9004, nivo 21, stanje 1, red <LineNumber>
Došlo je do greške tokom obrade evidencije za bazu podataka "TDE_DB". Ako je moguće, vratite ga u prethodno stanje iz rezervne kopije. Ako rezervna kopija nije dostupna, možda će biti neophodno da ponovo napravite evidenciju.
-
VRATI EVIDENCIJU U PRETHODNO STANJE
Lokacija: mediaRead.cpp:1018
Izraz: readSize <= m_Demand
SPID: 84
ID procesa: ID obrade
Msg 3013, nivo 16, stanje 1, linijski <LineNumber>
EVIDENCIJA VRAĆANJA U PRETHODNO STANJE se nenormalno obustavlja.
Msg 3624, nivo 20, stanje 1, red <LineNumber>
Provera potvrde sistema nije uspela. Detalje potražite u evidenciji grešaka sistema SQL Server. Do neuspeha potvrde obično dolazi zbog greške u softveru ili oštećenja podataka. Da biste proverili oštećenje baze podataka, razmotrite pokretanje funkcije DBCC CHECKDB. Ako ste pristali da pošaljete deponija korporaciji Microsoft tokom podešavanja, mini-deponija će biti poslata korporaciji Microsoft. Ispravka može biti dostupna korporaciji Microsoft u najnovijem servisnim paketu ili u hitnim ispravkama tehničke podrške.
Beleške PROBLEM NE UTIČE NA ZAGLAVLJA SAMO ZA VRAĆANJE U PRETHODNO STANJE I VRAĆANJE U PRETHODNO STANJE FILELISTONLY ne utiče na ovaj problem i radiće u svim slučajevima.
VRAĆANJE U PRETHODNO STANJE VERIFYONLY može uspešno da se vrati za POTPUNU rezervnu kopiju koja je nevažeća u zavisnosti od gorenavedenog scenarija: nemojte se oslanjati na RESTORE VERIFYONLY da biste utvrdili da se rezervna kopija može vratiti u prethodno stanje bez ikakva na gorenavedeni problem. VRAĆANJE VERIFIKACIJA U ODNOSU na rezervnu kopiju evidencije obično neće uspeti zajedno sa istom greškom kao stvarna evidencija vraćanja u prethodno stanje koja je opisana iznad.
Zbog toga je važno da proverite da li u kontekstu gde je komprimovanje TDE i rezervne kopije možda omogućeno, sve SQL Server 2019 instance koje koriste rezervne kopije iz drugih instanci sistema SQL Server 2019 primaju CU16 (ili noviju) pre instanci koje generišu materijal za pravljenje rezervne kopije. Arhitekture isporuke evidencije bi bili primer ovakve situacije: prvo nadogradite sekundarne instance.
Kada se napravi rezervna kopija evidencije transakcija pomoću komprimovanja, obično nije moguće ponovo kreirati datoteku bez komprimovanja. Zbog toga bi nadogradnja primarnog servera za isporuku evidencije na SQL Server 2019 CU16 ili noviju verziju u takvom kontekstu prekidala zadatke vraćanja u prethodno stanje dok se i sekundarni server ne nadogradi.
Nekomprimoovana rezervna kopija baze podataka omogućena za TDE, komprimovana rezervna kopija baze podataka koja nije omogućena za TDE ili nekomprimovana rezervna kopija baze podataka koja nije omogućena za TDE neće koristiti novi format rezervne kopije predstavljen u cu16 formatu i može se vratiti u prethodno stanje u instanci SISTEMA SQL Server 2019 u bilo kojoj verziji.
Stoga je neophodno da onemogućite komprimovanje rezervne kopije ako planirate da vratite materijal baze podataka omogućene za TDE (potpunu rezervnu kopiju ili pravljenje rezervne kopije evidencije transakcija) u bilo koje SQL Server instance starijih verzija pre SQL Server 2019 CU16.
Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i bezbednosne ispravke koje su bile u prethodnom izdanju. Preporučujemo da instalirate najnoviju verziju za svoju verziju sistema SQL Server:
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".
Reference
Saznajte više o terminologiji koju Microsoft koristi za opisivanja softverskih ispravki.