Belangrijkste punten
- De master-database bestuurt de volledige SQL Server-instantie: ze bevat de serverconfiguratie, de loginaccounts en de metadata van elke database op de instantie.
- Een geldige, geteste back-up is de enige betrouwbare weg naar herstel: zonder back-up is volledig herstel niet mogelijk.
- De single-user modus is verplicht voordat het herstel kan starten: die beperkt de server tot één administratieve verbinding, zodat andere sessies het herstel niet verstoren.
- Validatie na het herstel moet klaar zijn voordat u de server teruggeeft: controleer na de restore de logins, de beschikbaarheid van databases, de configuratie-instellingen en de connectiviteit van applicaties. Alles wat na de laatste back-up is aangemaakt of gewijzigd, ontbreekt.
De master-database is de belangrijkste systeemdatabase binnen een SQL Server-instantie (Structured Query Language). Ze bewaart de configuratie-instellingen van de server, de loginaccounts en de metadata van elke database op de instantie. Raakt ze beschadigd of onbereikbaar, dan kan SQL Server helemaal niet meer opstarten en gaat elke afhankelijke database offline.
In deze gids leest u hoe u een SQL Server master-database herstelt via een gecontroleerd herstelproces, van de voorbereiding en de single-user modus tot de validatie achteraf.
Zo herstelt u de master-database in SQL Server
Weten hoe u een master-database in SQL Server herstelt begint bij inzicht in wat het herstelproces inhoudt en wat er geregeld moet zijn voordat u ook maar één stap zet.
De rol van de master-database
Voordat u een master-database in SQL Server probeert te herstellen, is het nuttig om te begrijpen waarom ze anders wordt behandeld dan andere databases en wat er op het spel staat als ze uitvalt.
De master-database in een SQL Server bevat:
- Configuratie-instellingen van de server: instellingen op instantieniveau die bepalen hoe SQL Server werkt, waaronder geheugentoewijzing, netwerkconfiguratie en opstartparameters.
- Login- en authenticatiegegevens: alle logins op serverniveau en hun rechten worden hier bewaard. Gaat de master-database verloren, dan verdwijnt de toegangscontrole voor de hele instantie mee.
- Metadata en bestandslocaties van databases: de master-database houdt de naam, de locatie en de status van elke database op de instantie bij. Zonder die gegevens kan SQL Server geen enkele database vinden of koppelen.
- Objecten en processen op systeemniveau: kernobjecten die SQL Server nodig heeft om te functioneren staan in de master-database en zijn niet bereikbaar zodra die onbeschikbaar is.
Al het andere op de instantie hangt ervan af. Schade aan de master-database treft dus de volledige SQL Server-omgeving en niet slechts één database.
Wat zijn de meest voorkomende oorzaken van een defecte master-database?
Voordat u de herstelstappen voor de SQL Server master-database doorloopt, moet u eerst vaststellen wat de storing heeft veroorzaakt. Dat bepaalt hoe het herstel kan verlopen en welke punten u moet nakijken zodra de instantie weer online is.
Enkele van de meest voorkomende oorzaken van een defecte master-database:
Veelvoorkomende oorzaken van een defecte master-database:
- Schijfcorruptie of defecte hardware: problemen met de fysieke opslag kunnen de bestanden van de master-database zonder waarschuwing beschadigen. Dit is een van de meest voorkomende oorzaken van een plotse storing van de instantie.
- Per ongeluk verwijderen of wijzigen van systeembestanden: handmatige wijzigingen aan bestanden op systeemniveau buiten SQL Server om kunnen de bestanden van de master-database beschadigen of volledig verwijderen.
- Mislukte updates of configuratiewijzigingen: een mislukte SQL Server-update of een verkeerd ingestelde optie kan de master-database in een inconsistente staat achterlaten waardoor de instantie niet meer start.
- Malware of ongeoorloofde toegang: kwaadaardige activiteit gericht op systeemdatabases kan de bestanden van de master-database beschadigen of verwijderen, waardoor herstel nodig wordt.
- Onvolledige of mislukte back-upprocessen: een back-up die niet correct is afgerond lijkt soms geldig, maar faalt tijdens het herstel. Teams blijven dan achter zonder betrouwbaar herstelpunt.
Als u de oorzaak achterhaalt vóór u aan het herstel begint, voorkomt u dat hetzelfde probleem zich opnieuw voordoet zodra de server weer draait.
Het herstel van SQL Server voorbereiden
Voordat u een SQL Server master-database herstelt, moet u een aantal zaken op orde hebben. Slaat u dit over, dan riskeert u de situatie te verergeren of configuratiegegevens te verliezen die niet eenvoudig terug te halen zijn.
Dit hebt u nodig voordat het herstel start:
- Een geldige en recente back-up van de master-database: zonder een schone back-up is volledig herstel niet mogelijk. Controleer of het back-upbestand bestaat, toegankelijk is en succesvol werd afgerond vóór de storing.
- Administratieve toegang tot SQL Server: voor het herstel is toegang op sysadmin-niveau nodig. Ga vooraf na of het gebruikte account over de juiste rechten beschikt.
- Installatiemedia van SQL Server: zijn de bestanden van de master-database te zwaar beschadigd om de server in single-user modus te starten, dan hebt u de installatiemedia mogelijk nodig om eerst de systeemdatabases opnieuw op te bouwen.
- De huidige serverconfiguratie: noteer vooraf de configuratie-instellingen van de server, de loginaccounts en de bestandslocaties van de databases. Een deel daarvan moet u na het herstel mogelijk opnieuw instellen.
Zonder geldige back-up zijn de herstelopties beperkt en kan dat leiden tot permanent verlies van de serverconfiguratie en de logingegevens.
Waarom moet SQL Server in single-user modus starten voor het herstel van de master-database?
Het herstellen van de master-database vereist exclusieve toegang tot de server. Zonder die exclusieve toegang kunnen andere verbindingen het proces verstoren of de restore laten mislukken.
De single-user modus lost dat op door:
- De server te beperken tot één verbinding: zolang de single-user modus actief is, is er maar één administratieve verbinding toegestaan. Andere gebruikers of services kunnen tijdens het herstel geen verbinding maken.
- Conflicten tijdens het herstel te voorkomen: meerdere actieve verbindingen tijdens het herstel van een master-database kunnen het proces doen mislukken of de server in een inconsistente staat achterlaten.
- Administratieve controle over de sessie te garanderen: de single-user modus zorgt ervoor dat de verbinding die het herstel uitvoert zonder onderbreking volledige controle over de server heeft.
Zonder single-user modus verloopt het herstelproces niet vlekkeloos en neemt het risico op een mislukt of onvolledig herstel toe.
Zo valideert u SQL Server na het herstel
Zodra de restore klaar is, bevestigt de validatie dat de server weer werkt. Deze herstelstappen voor de SQL Server master-database draaien rond validatie en moet u afronden voordat u de server teruggeeft aan gebruikers of applicaties opnieuw verbindt.
- Controleer of SQL Server normaal opstart: herstart de server buiten de single-user modus en ga na of hij foutloos opstart. Opstartfouten op dit punt moet u onderzoeken voordat u verdergaat.
- Controleer de logintoegang en de rechten: kijk na of de bestaande logins intact zijn en of de rechten correct zijn toegewezen. Logins die na de laatste back-up zijn aangemaakt moet u handmatig opnieuw aanmaken.
- Controleer de beschikbaarheid van de databases: ga na of alle databases online en bereikbaar zijn. Databases die na de back-up zijn aangemaakt of gewijzigd vragen mogelijk extra aandacht.
- Bekijk de configuratie-instellingen: vergelijk de huidige serverinstellingen met de bekende basislijnen. Instellingen die na de laatste back-up zijn gewijzigd zijn teruggezet en moet u mogelijk opnieuw toepassen.
- Test de connectiviteit van applicaties: verbind de afhankelijke applicaties opnieuw en controleer of ze hun databases foutloos bereiken. Zo weet u zeker dat de restore geen compatibiliteits- of toegangsproblemen heeft veroorzaakt.
Door deze controles uit te voeren voordat de server weer in gebruik gaat, verkleint u de kans dat vervolgproblemen onopgemerkt blijven.
Welke risico’s en aandachtspunten spelen bij het herstel van SQL Server?
Soms verloopt een herstel niet zoals gepland en komen bepaalde problemen pas na afloop van de restore aan het licht.
Met deze risico’s houdt u best rekening voordat u aan het herstel begint:
- Verlies van configuratiewijzigingen van na de back-up: serverinstellingen, logins of configuratiewijzigingen die na de laatste SQL-back-up van de master-database zijn doorgevoerd, zijn na het herstel verdwenen. U moet ze opsporen en handmatig opnieuw toepassen.
- Verschil met andere systeemdatabases: is de back-up van de master-database ouder dan de laatste wijzigingen aan andere systeemdatabases, dan kunnen er inconsistenties ontstaan die extra stappen vragen om op te lossen.
- Instellingen of logins opnieuw configureren: logins, gekoppelde servers en andere objecten op serverniveau die na de back-up zijn aangemaakt ontbreken na het herstel en moet u opnieuw aanmaken.
- Impact op afhankelijke applicaties: applicaties die op de server steunen kunnen zich onverwacht gedragen als hun databasemetadata of verbindingsinstellingen niet langer overeenkomen met de inhoud van de herstelde master-database.
Wie deze risico’s kent voordat het herstel begint, plant makkelijker de stappen die nodig zijn om de server weer volledig operationeel te krijgen.
Zo voorkomt u problemen met de master-database in de toekomst
Herstel kost veel tijd en brengt risico’s mee. De beste manier om die kosten te drukken is ervoor zorgen dat de omstandigheden die tot een defecte master-database leiden worden aangepakt voordat ze problemen veroorzaken.
Beste praktijken om toekomstige storingen te voorkomen:
- Regelmatige back-ups van systeemdatabases: plan consequent back-ups van de master-database en verhoog de frequentie na ingrijpende configuratiewijzigingen. Een recente back-up is veruit de belangrijkste factor voor een geslaagd herstel.
- Monitoring van de gezondheid van schijven en hardware: volg de staat van de opslag op en let op vroege waarschuwingssignalen zoals leesfouten of prestatieverlies. Wie hardwareproblemen vroeg opmerkt, verkleint de kans dat corruptie de bestanden van de master-database bereikt.
- Beperkte toegang tot configuraties op systeemniveau: beperk wie wijzigingen mag aanbrengen aan systeemdatabases en instellingen op serverniveau. Minder mensen met toegang betekent minder kans op onbedoelde of ongeoorloofde wijzigingen.
- Validatie van de integriteit van back-ups: controleer regelmatig of de back-ups van de master-database volledig en herstelbaar zijn. Een back-up die nooit is getest kan het laten afweten net wanneer u ze het hardst nodig hebt.
- Periodiek testen van de herstelprocedure: doorloop het herstelproces op vaste momenten in een testomgeving. Zo weet u zeker dat de procedure werkt en dat het team weet wat te doen bij een echte storing.
Teams die deze praktijken als routineonderhoud beschouwen staan veel sterker wanneer het echt misgaat.
Herstel de SQL Server master-database vlot met een concreet plan
Het herstellen van de master-database is een van de taken met de hoogste inzet voor een DBA of systeembeheerder. Het proces is goed beheersbaar zolang de juiste back-up beschikbaar is, de single-user modus correct wordt gebruikt en de validatie na het herstel is afgerond voordat de server weer in gebruik gaat.
De teams die het snelst herstellen zijn de teams die zich voorbereidden voordat er iets misging. Regelmatige back-ups, geteste herstelprocedures en beperkte toegang tot systeemconfiguraties maken het verschil wanneer er echt een storing optreedt.
Gerelateerde onderwerpen: