SQL Server Duomenų bazė atkūrimo režimu? Gaukite 10 patikrintų pataisymų dabar! Žingsnis po žingsnio sprendimai – nuo paprasto iki sudėtingo taisymo.
1. Supratimas SQL Server Duomenų bazės atkūrimo režimas
1.1 Kas yra atkūrimo režimas? SQL Server
Kai SQL Server duomenų bazėje rodoma būsena „Atkuriama“, tai reiškia, kad SQL Server atlieka gedimų arba operacijų atkūrimą, kad užtikrintų duomenų bazės nuoseklumą. Šis automatinis procesas palaiko duomenų vientisumą, pakartotinai atkurdamas patvirtintas operacijas ir atšaukdamas nepatvirtintas.
Atkūrimo režimas paprastai įsijungia po netikėtų išsijungimų, elektros energijos tiekimo sutrikimų arba atkuriant duomenų bazę. Nors tai yra įprastas apsaugos mechanizmas, problemų kyla, kai SQL Server Duomenų bazės atkūrimas užtrunka neįprastai ilgai arba atrodo, kad ji užstringa.
1.2 Trys duomenų bazės atkūrimo etapai
SQL Server Atsigavimas vyksta trimis skirtingais etapais:
1.2.1 Analizės etapas
SQL Server nuskaito operacijų žurnalą nuo paskutinio kontrolinio taško, kad nustatytų nešvarius puslapius ir aktyvias operacijas. Jis sukuria nešvarių puslapių lentelę (DPT) ir aktyvių operacijų lentelę (ATT), kad galėtų sekti, ką reikia atkurti.
1.2.2 Pakartojimo etapas (perėjimas į priekį)
Sistema pakartoja visas patvirtintas operacijas, kurios nebuvo įrašytos į diską prieš gedimą. Tai užtikrina, kad visi patvirtinti pakeitimai būtų tinkamai pritaikyti duomenų bazės failams.
1.2.3 Atšaukimo etapas (atšaukimas)
Visos nepatvirtintos operacijos yra atšaukiamos, siekiant išlaikyti duomenų bazės nuoseklumą. Kai jos bus baigtos, duomenų bazė vėl bus prieinama įprastoms operacijoms.
1.3 Dažniausi simptomai ir klaidų pranešimai
Kai jūsų SQL Server Jei db yra atkūrimo stadijoje, paprastai matysite:
- Duomenų bazės pavadinimas, kuriame rodoma „(Atkuriama)“ SQL Server Vadybos studija
- Prisijungimo klaidos su pranešimais „duomenų bazė atkuriama“
- Klaidų žurnalo įrašai, rodantys atkūrimo eigos procentus
- Duomenų bazės būsena, kai pateikiama užklausa, rodoma „RECOVERING“ (atkuriama)
2. Pagrindinės priežastys SQL Server Atkūrimo režimo problemos
2.1 Nebaigtos atkūrimo operacijos
Most Dažna priežastis kyla atkuriant iš kelių atsarginių kopijų failų naudojant NORECOVERY variantas be finalo SU ATSIGAVIMU komandą. Duomenų bazė paliekama laukti papildomų atkūrimo operacijų.
2.2 Operacijų žurnalo problemos
Dideli operacijų žurnalų failai arba per daug virtualių žurnalų failų (VLF) gerokai sulėtina atkūrimą. Kai MS SQL atkuria tūkstančius VLF, procesas gali užtrukti valandas ar dienas.
2.3 Su sistema susijusios problemos
Aparatinės įrangos gedimai, elektros energijos tiekimo sutrikimai arba nepakankamas disko vietos kiekis gali sutrikdyti įprastą duomenų bazės veikimą ir sukelti ilgus atkūrimo procesus duomenų saugojimo metu.tart.
2.4 Duomenų bazės sugadinimas
Sugadinti duomenų bazės failai neleidžia sėkmingai atlikti atkūrimo, todėl duomenų bazė neribotam laikui įstringa atkūrimo režime.
3. Diagnozėostic žingsniai prieš taisant
3.1 Tikrinama SQL Server Klaidų Naujienos
Prieš bandydami atlikti taisymus, patikrinkite SQL Server klaidų žurnalas, kuriame pateikiami atkūrimo eigos pranešimai. Ieškokite įrašų, kuriuose rodomi užbaigimo procentai ir numatomas likęs laikas.
- Atviras SQL Server Vadybos studija
- Eikite į valdymas -> SQL Server Naujienos
- Peržiūrėkite naujausius įrašus, susijusius su jūsų duomenų bazės pavadinimu
- Ieškokite atsigavimo fazės indikatorių (1, 2 arba 3 iš 3 fazių)
3.2 Atsigavimo eigos stebėjimas
Naudokite dinaminius valdymo rodinius aktyvioms atkūrimo operacijoms stebėti:
SELECT session_id, command, blocking_session_id, wait_type, wait_time, wait_resource FROM sys.dm_exec_requests WHERE command = 'DB STARTUP';
3.3 Duomenų bazės būsenos tikrinimas
Patikrinkite dabartinę duomenų bazės būseną, kad suprastumėte atkūrimo būseną:
SELECT name, state_desc FROM sys.databases WHERE name = 'YourDatabaseName';
4. 1 sprendimas: palaukite, kol bus baigtas natūralus atsistatymas
Kartais kantrybė yra geriausias sprendimas, kai SQL Server Duomenų bazė atkuriama. Šis metodas veikia, kai atkūrimas vyksta įprastai, bet trunka ilgiau nei tikėtasi.
4.1 Kada reikia būti kantriam
Leiskite natūraliam užbaigimui, kai:
- Klaidų žurnalai rodo nuolatinę pažangą, o laiko įverčiai mažėja
- Nepranešta apie jokius korupcijos klaidų
- Duomenų bazėje neseniai buvo atliktos didelės operacijos
- VLF skaičius yra valdomas (mažiau nei 1,000)
4.2 Atsigavimo eigos stebėjimas
Klaidų žurnaluose pateikti atkūrimo laiko įvertinimai dažnai yra netikslūs. Sutelkite dėmesį į eigos procentus, o ne į likusį laiką. Didelėms duomenų bazėms su išsamia operacijų istorija gali prireikti kelių valandų, kad būtų visiškai atkurtas duomenų atkūrimas.
5. 2 pataisymas: naudokite „RESTORE DATABASE WITH RECOVERY“
Šis pataisymas išsprendžia nebaigtų atkūrimo operacijų, kai buvo praleistas paskutinis atkūrimo veiksmas, problemas. Naudokite jį, kai jūsų SQL Server db atkūrimo metu atsirado dėl atkūrimo proceso naudojant NORECOVERY.
5.1 Komandos supratimas
Geriausios ATKURTI DUOMENŲ BAZĘ SU ATKŪRIMU komanda užbaigia atkūrimo procesą, atšaukdama nepatvirtintas operacijas ir prijungdama duomenų bazę prie interneto.
5.2 Diegimo žingsniai
- Atviras SQL Server Vadybos studija
- Prisijunkite prie savo SQL Server pavyzdys
- Spauskite Nauja > Užklausa su dabartiniu ryšiu
- Vykdyti:
RESTORE DATABASE [YourDatabaseName] WITH RECOVERY; - Palaukite užbaigimo patvirtinimo
Įspėjimas: Šią komandą naudokite tik tuo atveju, jei esate tikri, kad nėra laukiančių papildomų atkūrimo operacijų.
6. 3 pataisymas: išspręskite operacijų žurnalo problemas
Operacijų žurnalo problemos yra pagrindinė ilgo atkūrimo laiko priežastis. Šis pataisymas išsprendžia pilnus žurnalus, per didelius VLF ir žurnalų vietos problemas, kurios nuolat... SQL Server sveikstant.
6.1 Operacijų žurnalų atsarginių kopijų kūrimas
Atlaisvinkite žurnalo vietos sukurdami operacijų žurnalo atsargines kopijas:
- Atviras SQL Server Vadybos studija
- Dešiniuoju pelės mygtuku spustelėkite savo duomenų bazę -> Užduotys -> Atgal Aukštyn
- pokytis Atsarginės kopijos tipas į Sandorių žurnalas
- Nurodykite atsarginės kopijos paskirties vietą
- Spauskite OK įvykdyti
6.2 Virtualių žurnalų failų (VLF) valdymas
Patikrinkite VLF skaičių naudodami:
DBCC LOGINFO('YourDatabaseName');
Jei turite daugiau nei 1,000 VLF, sumažinkite juos:
- Operacijų žurnalo atsarginių kopijų kūrimas
- Žurnalo failo sumažinimas:
DBCC SHRINKFILE(LogFileName, TRUNCATEONLY); - Žurnalo failo didinimas dideliais fragmentais (1 GB ar daugiau)
6.3 Saugus žurnalų failų mažinimas
Žurnalus sumažinkite tik priežiūros metu, kai nevykdomos jokios aktyvios operacijos. Prieš mažinimo operacijas visada sukurkite duomenų bazės atsarginę kopiją.
7. 4 pataisymas: paleiskite DBCC CHECKDB ir taisykite
Duomenų bazės sugadinimas gali trukdyti sėkmingai užbaigti atkūrimą. DBCC CHECKDB yra integruota komanda, kuri gali nustatyti ir ištaisyti nedidelius sugadinimo atvejus, dėl kurių MS SQL veikia atkūrimo režimu.
7.1 Duomenų bazės sugadinimo tikrinimas
Starnaudodami standartinį duomenų bazės vientisumo tikrinimo metodą. Pirmiausia išbandykite tiesiogiai DBCC CHECKDB:
- Vykdyti:
DBCC CHECKDB('YourDatabaseName') WITH NO_INFOMSGS; - Peržiūrėkite rezultatus, ar nėra nuoseklumo klaidų
- Dokumentuokite visus pranešimus apie korupciją
Jei DBCC CHECKDB nepavyksta Jei rodomos tokios klaidos kaip „Duomenų bazė atkuriama. Laukiama, kol atkūrimas bus baigtas“, tai reiškia, kad duomenų bazė aktyviai veikia atkūrimo režimu ir blokuoja prieigą. Tokiu atveju pereikite prie 7.3 skyriaus, kad naudotumėte AVARINĮ režimą.
7.2 Prieinamų duomenų bazių taisymo parinktys
Jei DBCC CHECKDB sėkmingai veikė ir rado pažeidimų, atlikite šiuos taisymo veiksmus:
- Nustatyti duomenų bazę į vieno vartotojo režimą:
ALTER DATABASE [YourDatabaseName] SET SINGLE_USER; - Bandymas saugiai sutaisyti:
DBCC CHECKDB('YourDatabaseName', REPAIR_REBUILD); - Jei nepavyksta, naudokite:
DBCC CHECKDB('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS); - Grįžti į kelių vartotojų režimą:
ALTER DATABASE [YourDatabaseName] SET MULTI_USER;
7.3 Avarinio režimo naudojimas, kai duomenų bazė nepasiekiama
Avarinis režimas reikalingas tik tada, kai duomenų bazė užstringa atkūrimo procese ir atmeta įprastus DBCC CHECKDB bandymus. Jis pažymi duomenų bazę kaip READ_ONLY ir išjungia registravimą. Naudokite šį metodą, kai nepavyksta pasiekti standartinės prieigos:
- Nustatykite avarinį režimą:
ALTER DATABASE [YourDatabaseName] SET EMERGENCY; - Nustatyti vienam vartotojui:
ALTER DATABASE [YourDatabaseName] SET SINGLE_USER; - Paleiskite vientisumo patikrinimą:
DBCC CHECKDB('YourDatabaseName') WITH NO_INFOMSGS; - Jei aptinkama pažeidimų, pirmiausia atlikite saugų taisymą:
DBCC CHECKDB('YourDatabaseName', REPAIR_REBUILD); - Jei nepavyko, naudokite taisymą praradus duomenis:
DBCC CHECKDB('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS); - Nustatyti kelių vartotojų režimą:
ALTER DATABASE [YourDatabaseName] SET MULTI_USER; - Nustatyti internete:
ALTER DATABASE [YourDatabaseName] SET ONLINE;
Svarbu: AVARINIS režimas apeina įprastus atkūrimo procesus ir turėtų būti naudojamas tik tada, kai duomenų bazė yra visiškai nepasiekiama. Prieš pereinant prie avarinio režimo, visada išbandykite standartinį DBCC CHECKDB metodą.
Čia galite rasti išsamesnis vadovas, kaip naudoti DBCC CHECKDB.
8. 5 pataisymas: atkūrimas iš atsarginės kopijos
Kai kiti metodai neveikia arba kyla abejonių dėl duomenų vientisumo, atkūrimas iš švarios atsarginės kopijos dažnai yra geriausias būdas.ost patikimas sprendimas sprendžiant SQL Server duomenų bazės atkūrimo problemos.
8.1 Kada verta rinktis atsarginių kopijų atkūrimą
Apsvarstykite galimybę atkurti atsarginę kopiją, kai:
- Atkūrimo procesas vyksta jau daugiau nei 24 valandas be jokios pažangos
- Korupcijos klaidos neleidžia sėkmingai atlikti remonto
- Turite naujausių, patikrintų atsarginių kopijų
- Duomenų praradimas nuo paskutinės atsarginės kopijos yra priimtinas
8.2 Žingsnis po žingsnio atkūrimo procesas
- Atviras SQL Server Vadybos studija
- Dešiniuoju pelės mygtuku spustelėkite Duomenų bazės -> Atkurti duomenų bazę
- pasirinkti Įrenginio skiltyje „Šaltinis“
- Spauskite papildyti ir naršykite atsarginės kopijos failą
- Pasirinkite atsarginę kopiją ir spustelėkite OK
- Pasirinkti Perrašyti esamą duomenų bazę Jei reikia
- Spauskite OK į start restauravimas
8.3 Atkūrimas konkrečiu momentu
Norėdami kuo mažiau prarasti duomenų, naudokite operacijų žurnalų atsargines kopijas, kad atkurtumėte duomenis iki konkretaus laiko momento. Įsitikinkite, kad turite nenutrūkstamą žurnalų atsarginių kopijų grandinę nuo visos atsarginės kopijos iki norimo atkūrimo taško.
8.4 Nuoroda
Daugiau informacijos galite rasti mūsų išsamus vadovas, kaip sukurti atsargines kopijas ir atkurti duomenis SQL Server duomenų bazės.
9. 6 pataisymas: išjunkite automatinio uždarymo funkciją
Duomenų bazės ypatybė AUTO CLOSE gali sukelti pakartotinius atkūrimo ciklus, todėl gali atrodyti, kad jūsų SQL Server duomenų bazė nuolat atkuriama. Išjungus šią savybę, problema išsprendžiama.
9.1 Automatinio uždarymo problemų supratimas
Kai įjungtas AUTOMATINIS UŽDARYMAS, SQL Server uždaro duomenų bazę pasibaigus paskutiniam ryšiui, tada vėl ją atidaro naujiems ryšiams. Šis pakartotinis atidarymas kiekvieną kartą suaktyvina atkūrimo procesus.
9.2 Automatinio uždarymo išjungimas
- Atviras SQL Server Vadybos studija
- Dešiniuoju pelės mygtuku spustelėkite savo duomenų bazę -> Skelbimų
- pasirinkti Nustatymai iš kairiojo skydelio
- Nustatyti Automatinis uždarymas į Klaidingas
- Spauskite OK pritaikyti pakeitimus
Arba naudokite T-SQL:
ALTER DATABASE [YourDatabaseName] SET AUTO_CLOSE OFF;
10. 7 pataisymas: Rez.tart SQL Server tarnyba
Paslaugų restart gali išspręsti užstrigusius atkūrimo procesus, tačiau jį reikia naudoti atsargiai, nes jis gali sukelti problemų.tart atkūrimas nuo pat pradžių. Šis pataisymas veikia, kai SQL Server atsigavimo metu atrodo visiškai sustingęs.
10.1 Kai paslaugos atnaujinamostart padeda
Raiškatarpaslauga, kai:
- Atsigavimo procesas sustojo kelioms valandoms
- Klaidų žurnaluose nerodoma jokių naujų įrašų
- Kitos duomenų bazės veikia normaliai
- Galite sau leisti ilgesnes prastovas
10.2 Saugus gelbėjimastart Procedūros
- Atviras SQL Server Konfigūracijos tvarkyklė
- Eikite į SQL Server Paslaugos
- Ieškoti SQL Server pavyzdžiui, norite atkurtitart, tada spustelėkite dešiniuoju pelės mygtuku SQL Server (Instegumento pavadinimas)
- pasirinkti Raiškatart
- Palaukite, kol paslauga bus visiškai atkurtatart
- Stebėkite klaidų žurnalus, kad sužinotumėte apie atkūrimo eigą
Pastaba: Raiškatardėl to prasidės atsigavimas nuo start, o tai gali pailginti bendrą atsigavimo laiką.
11. 8-as pataisymas: duomenų bazės taisymas ją atjungiant ir vėl prijungiant
Kraštutiniais atvejais atjunkite ir vėl prijunkite duomenų bazę:
- Atjungti duomenų bazę:
EXEC sp_detach_db 'YourDatabaseName'; - Prisekite tik MDF failą:
CREATE DATABASE [YourDB] ON (FILENAME = 'C:\Path\YourDB.mdf') FOR ATTACH_REBUILD_LOG; - Tai atkuria naują operacijų žurnalą
Įspėjimas: Šis metodas gali sukelti duomenų praradimą. Naudokite tik tada, kai kitos galimybės jau išnaudotos.
12. 9 sprendimas: duomenų bazės veidrodinio atspindžio problemų sprendimas
Duomenų bazių veidrodinio atspindžio konfigūracijos gali sukelti unikalių atkūrimo problemų. Šis pataisymas išsprendžia su veidrodiniu atspindžiu susijusias problemas, dėl kurių duomenų bazės išlieka atkūrimo būsenoje.
12.1 Su veidrodiniu atspindžiu susijusios atkūrimo problemos
Veidrodinės duomenų bazės gali užstrigti atkūrimo metu dėl partnerio ryšio problemų arba galinių taškų problemų. Atkūrimo būseną gali rodyti ir pagrindinės, ir veidrodinės duomenų bazės.
12.2 Veidrodinio atkūrimo sprendimai
Raiškatart veidrodinio atspindžio galinis taškas:
- Rasti galinio taško pavadinimą:
SELECT * FROM sys.endpoints WHERE type = 4; - Stabdymo galinis taškas:
ALTER ENDPOINT [EndpointName] STATE = STOPPED; - Start galinis taškas:
ALTER ENDPOINT [EndpointName] STATE = STARTED;
Jei galinis taškas yratarJei nepavyksta, nutraukite veidrodinį partnerystę:
- Vykdyti:
ALTER DATABASE [DatabaseName] SET PARTNER OFF; - Paleisti:
RESTORE DATABASE [DatabaseName] WITH RECOVERY; - Iš naujo konfigūruokite veidrodinį atspindėjimą, kai duomenų bazė bus prisijungusi
13. 10-as pataisymas: naudokite profesionalius atkūrimo įrankius
Trečiųjų šalių atkūrimo įrankiai suteikia išplėstines taisymo galimybes, kai yra integruoti SQL Server metodai neveikia. Šie įrankiai dažnai gali atkurti duomenis iš labai sugadintų duomenų bazių.
13.1 DataNumen SQL Recovery
DataNumen SQL Recovery pasižymi aukštu susigrąžinimo rodikliu ir išsamiomis pasirinkimo galimybėmis.
Žemiau pateikiami naudojimo žingsniai:
- Sustabdykite SQL Server Aptarnavimas.
- Atkūrimo režimu sukurkite duomenų bazės failų kopijas, įskaitant pagrindinį MDF failą ir antrinius NDF failus.
- Start SQL Server Aptarnavimas.
- Start DataNumen SQL Recovery.
- Pasirinkite kopiją, o ne originalų failą, kaip atkuriamos duomenų bazės šaltinį.
- Spustelėkite „Star„t Recovery“ ir vykdykite instrukcijas, kad atkurtumėte duomenų bazę.
- Po atkūrimo proceso atsiras nauja atkūrimo duomenų bazė SQL Server kuriame yra visi atkurti duomenys.
13.2 Kada verta apsvarstyti trečiųjų šalių įrankius
Naudokite profesionalius įrankius, kai:
- Integruotos taisymo parinktys neveikia arba praneša apie didelį gedimą
- Nėra jokių naujausių atsarginių kopijų
- Svarbūs duomenys turi būti atkurti nepaisant korupcijos
- Standartiniai atkūrimo metodai lemia didelį duomenų praradimą
14. Geriausia prevencijos praktika
14.1 Reguliarios priežiūros užduotys
Įgyvendinkite šiuos metodus, kad išvengtumėte SQL Server Duomenų bazės atkūrimo problemos:
- Suplanuokite reguliarias pilnas ir žurnalų atsargines kopijas: Palaikykite visas atsarginių kopijų grandines
- VLF skaitiklių stebėjimas: Optimaliam našumui užtikrinti VLF neviršykite 100
- Plano žurnalo failo dydžio keitimas: Iš anksto nustatykite rąstų dydį, kad būtų išvengta per didelio savaiminio augimo
- Paleiskite įprastą DBCC CHECKDB: Ankstyva korupcijos aptikimas
14.2 Stebėjimas ir įspėjimas
Nustatykite aktyvią stebėseną:
- Įspėjimų apie duomenų bazės būsenos pokyčius konfigūravimas
- Disko vietos stebėjimas žurnalų failų diskuose
- Ilgalaikių operacijų stebėjimas
- Įspėjimas dėl per didelio VLF skaičiaus
14.3 Aparatinė įranga ir infrastruktūra
Užtikrinti patikimą infrastruktūrą:
- Naudokite greitą operacijų žurnalų saugyklą (pageidautina SSD)
- Įdiekite atsarginius maitinimo šaltinius
- Atskirkite duomenų ir žurnalų failus skirtinguose diskuose
- Apsvarstyti didelio prieinamumo sprendimai kaip Visada prieinamumo grupės
15. Sudėtingų scenarijų trikčių šalinimas
15.1 Kelios duomenų bazės problemos
Kai atkūrimo procese užstringa kelios duomenų bazės:
- Patikrinkite, ar nėra sistemos problemų (disko vietos, atminties)
- Svarbiausių duomenų bazių atkūrimo prioritetizavimas
- Apsvarstykite techninės įrangos problemas, turinčias įtakos visam egzemplioriui
- Peržiūrėkite naujausius sistemos pakeitimus arba atnaujinimus
15.2 Didelės duomenų bazės aspektai
Duomenų bazėms, didesnėms nei 1 TB:
- Tikėtinas ilgesnis atsigavimo laikas (galbūt dienos)
- Užtikrinkite tinkamą atminties paskirstymą
- Apsvarstykite lygiagretaus apdorojimo nustatymus
- Stebėti laikinosios duomenų bazės erdvę atkūrimo metu
15.3 Kada susisiekti su „Microsoft“ palaikymo tarnyba
Susisiekite su „Microsoft“ palaikymo tarnyba dėl:
- Svarbios gamybos sistemos be atsarginių kopijų kūrimo galimybių
- Įtariama SQL Server programinės įrangos klaidos
- Įmonės aplinkos, kurioms reikalingas garantuotas atkūrimas
- Sudėtingi „Always On“ arba klasterizavimo scenarijai
16. DUK
K: Kiek laiko turėtų SQL Server Kiek paprastai užtrunka duomenų bazės atkūrimas?
A: Atkūrimo laikas priklauso nuo duomenų bazės dydžio, operacijų apimties ir aparatinės įrangos našumo. Mažos duomenų bazės paprastai atkuriamos per kelias minutes, o didelės duomenų bazės su ilgais operacijų žurnalais gali užtrukti kelias valandas. Klaidų žurnaluose rodomi laiko įvertinimai dažnai yra netikslūs, todėl verčiau sutelkite dėmesį į eigos procentus.
K: Ar galiu sustoti? SQL Server atkūrimo metu neprarandant duomenų?
A: Sustojimas SQL Server atsigavimo metu paprastai yra saugu, bet atsigaustaratkūrimo procesas nuo pat pradžių, kai paslauga atnaujinamatarTai pailgina bendrą atkūrimo laiką, tačiau nesukelia papildomo duomenų praradimo, palyginti su tuo, kas įvyko pradinio incidento metu.
K: Kuo skiriasi būsenos „Atkuriama“ ir „Laukiama atkūrimo“?
A: „Atsigaunantis“ reiškia SQL Server aktyviai atlieka atkūrimo operacijas. „Laukiama atkūrimo“ reiškia, kad atkūrimo procesas nepavyko.tart, dažniausiai dėl trūkstamų failų, nepakankamų leidimų arba disko vietos problemų, kurias reikia išspręsti prieš tęsiant atkūrimą.
Išsamesnės informacijos apie „Laukiama išieškojimo“ galite rasti mūsų išsamus vadovas.
K: Ar prarasiu duomenis, jei naudosiu REPAIR_ALLOW_DATA_LOSS?
A: Taip, REPAIR_ALLOW_DATA_LOSS gali pašalinti sugadintus duomenis, kad atkurtų duomenų bazės nuoseklumą. Visada pirmiausia pabandykite REPAIR_REBUILD, kuris išsprendžia struktūrines problemas neprarasdamas duomenų. REPAIR_ALLOW_DATA_LOSS naudokite tik kaip paskutinę priemonę, kai neturite kitų atkūrimo parinkčių.
K: Ar galiu pasiekti kitas duomenų bazes, kol viena duomenų bazė atkuriama?
A: Taip, kitos duomenų bazės toje pačioje SQL Server egzempliorius lieka pasiekiamas atkūrimo metu. Tik atkuriama duomenų bazė yra nepasiekiama. Tačiau atkūrimo operacijos gali turėti įtakos bendram serverio našumui.
K: Dėl ko duomenų bazė užstringa atkūrimo režime?
A: Dažniausios priežastys: nepilnos atkūrimo operacijos naudojant NORECOVERY, per daug virtualių žurnalų failų (VLF), dideli nepatvirtinti sandoriai, duomenų bazės sugadinimas, nepakankama disko vieta ir aparatinės įrangos problemos. Duomenų bazės, kuriose įjungtas AUTO UŽDARYMAS, taip pat gali nuolat būti atkuriamos.
K: Kaip sužinoti, ar sveikimas vyksta sklandžiai, ar įstrigo?
A: Monitorius SQL Server klaidų žurnalai atkūrimo eigos pranešimams, rodantiems užbaigimo procentus. Norėdami patikrinti, ar nėra aktyvių duomenų bazių, naudokite sys.dm_exec_requests.TARTUP komandos. Jei procentai laikui bėgant didėja, vyksta atkūrimas. Jei kelias valandas nebuvo naujų žurnalo įrašų, tai gali reikšti užstrigusį procesą.
K: Ar saugu atgaivinti?tart SQL Server paslauga atsigavimo metu?
A: Rez.taryra saugu, tačiau reikia naudoti atsargiai. Tai atsipirkstaratsigauti nuo pat pradžių, potencialiai padvigubinant atsigavimo laiką. Tik restarjei atkūrimo procesas atrodo visiškai užstrigęs ir daugelį valandų nevyksta jokia pažanga arba jei įtariate, kad jis tikrai užstrigo.
K: Kuo skiriasi AUTOMATINIS UŽDARYMAS ir atkūrimo režimas?
A: AUTOMATINIS UŽDARYMAS automatiškai uždaro duomenų bazes, kai nėra jokių ryšių, o tada jas vėl atidaro naujiems ryšiams. Šis pakartotinis atidarymas kiekvieną kartą sukelia trumpus atkūrimo procesus, todėl atrodo, kad duomenų bazė nuolat atkuriama. Išjungus AUTOMATINĮ UŽDARYMĄ, ši problema išsprendžiama.
K: Ar operacijų žurnalų atsarginės kopijos gali padėti atkuriant duomenis?
A: Operacijų žurnalų atsarginės kopijos gali atlaisvinti žurnalų vietos, jei žurnalų diskas pilnas, todėl galima tęsti atkūrimą. Tačiau negalite kurti duomenų bazės, kuri šiuo metu veikia atkūrimo režimu, žurnalo atsarginių kopijų. Žurnalų atsarginės kopijos yra naudingesnės prevencijai ir...ost-atkūrimo priežiūra.
K: Kada turėčiau susisiekti su „Microsoft“ palaikymo tarnyba?
A: Jei įtariate, kad kritinėse gamybos sistemose, kuriose neveikia integruoti atkūrimo metodai, kreipkitės į „Microsoft“ palaikymo tarnybą. SQL Server programinės įrangos klaidas, sudėtingiems „Always On“ arba klasterizavimo scenarijams arba kai įmonės aplinkoje reikalingas garantuotas duomenų atkūrimas su minimaliu prastovos laiku.
K: Kaip išvengti duomenų bazių įstrigimo atkūrimo metu?
A: Įdiekite reguliarias pilnas ir žurnalų atsargines kopijas, stebėkite ir valdykite VLF skaičių, užtikrinkite pakankamai vietos diske, naudokite tinkamas išjungimo procedūras, palaikykite aparatinės įrangos patikimumą, išjunkite automatinį uždarymą gamybos duomenų bazėse ir reguliariai vykdykite DBCC CHECKDB operacijas, kad anksti aptiktumėte gedimus.
K: Kas yra VLF ir kodėl jie veikia atsigavimą?
A: Virtualūs žurnalų failai (VLF) yra vidiniai segmentai operacijų žurnalų failuose. Per daug VLF (daugiau nei 1,000) gerokai sulėtina atkūrimą, nes SQL Server turi apdoroti kiekvieną atskirai. Tinkamas žurnalo failo dydžio ir augimo nustatymas padeda palaikyti optimalų VLF skaičių.
K: Ar galiu atkurti duomenis iš atsarginės kopijos, kai duomenų bazė yra atkuriama?
A: Negalite atkurti duomenų bazės, kuri šiuo metu yra atkūrimo režime. Turite palaukti, kol atkūrimas bus baigtas, arba sustabdyti procesą. SQL Server paslaugą arba atkurkite kitu duomenų bazės pavadinimu. Skubiais atvejais apsvarstykite galimybę atkurti naują duomenų bazės pavadinimą ir pervadinti ją, kai bus išspręstos atkūrimo problemos.
17. Išvada ir tolesni žingsniai
17.1 Pagrindinių sprendimų santrauka
Kai jūsų SQL Server duomenų bazė atkuriama, start šiais metodais tokia tvarka:
- Patikrinkite klaidų žurnalus ir stebėkite eigą
- Jei progresas yra pastovus, palaukite natūralaus užbaigimo
- Nepilnai atkurtiems failams naudokite funkciją „ATKURTI SU ATKURIMU“.
- Išspręskite operacijų žurnalo problemas
- Paleiskite DBCC CHECKDB arba profesionalius įrankius, kad patikrintumėte korupciją
- Sunkiais atvejais apsvarstykite atsarginių kopijų atkūrimą
Most SQL Server db atkūrimo situacijos išsprendžiamos per kelias valandas naudojant šiuos patikrintus metodus. Sudėtingose situacijose nedvejodami naudokite pažangius metodus arba profesionalius įrankius.
17.2 Papildomi ištekliai
Dėl papildomos pagalbos:
- "Microsoft" SQL Server Dokumentacija
- SQL Server Bendruomenės forumai
- Duomenų bazių administravimo tinklaraščiai ir techniniai ištekliai
- Profesionalios duomenų bazių atkūrimo paslaugos
Reguliarus techninis aptarnavimas ir stebėjimas padeda išvengti most atkūrimo problemos. Įgyvendinkite šiame vadove aprašytas prevencijos praktikas, kad ateityje kuo labiau sumažintumėte MS SQL atkūrimo problemų atsiradimą.
Apie Autorius:
Yuan Sheng yra vyresnysis duomenų bazių administratorius (DBA), turintis daugiau nei 10 metų patirtį SQL Server aplinkose ir įmonių duomenų bazių valdyme. Jis sėkmingai išsprendė šimtus duomenų bazių atkūrimo scenarijų finansinių paslaugų, sveikatos priežiūros ir gamybos organizacijose.
Yuan specializuojasi SQL Server duomenų bazių atkūrimas, didelio prieinamumo sprendimai ir našumo optimizavimas. Jo didelė praktinė patirtis apima kelių terabaitų duomenų bazių valdymą, „Always On Availability Groups“ diegimą ir automatizuotų atsarginių kopijų kūrimo bei atkūrimo strategijų, skirtų kritiškai svarbioms verslo sistemoms, kūrimą.
Pasitelkdamas savo technines žinias ir praktinį požiūrį, Yuanas daugiausia dėmesio skiria išsamių vadovų, padedančių duomenų bazių administratoriams ir IT specialistams spręsti sudėtingas problemas, kūrimui. SQL Server efektyviai meta iššūkius. Jis neatsilieka nuo naujausių žinių SQL Server leidimus ir besivystančias „Microsoft“ duomenų bazių technologijas, reguliariai testuodamas atkūrimo scenarijus, siekdamas užtikrinti, kad jo rekomendacijos atitiktų geriausią realią praktiką.
Turite klausimų apie SQL Server atkūrimo ar reikia papildomų duomenų bazės trikčių šalinimo nurodymų? Yuan mielai atsiliepimai ir pasiūlymai už šių techninių išteklių tobulinimą.









