Hoe herstelt u een beschadigde SQL database?

0000001237     -      27-09-2015

Het navolgende commando controleert de toewijzing alsook de logische en structurele integriteit van alle objecten in de gespecificeerde databank. Op basis daarvan wordt een foutenrapport gegenereerd in de directory met de SQL Server logbestanden. DBCC CHECKDB ('NAAM_VAN_DE_DB') Om de fouten automatisch te laten herstellen, moet u aan het commando een bijkomend argument toevoegen:

  • REPAIR_ALLOW_DATA_LOSS: tracht alle gemelde fouten te herstellen. Daarbij kunnen gegevens verloren gaan;
  • REPAIR_FAST: de syntax wordt enkel behouden voor de latere compatibiliteit. Er wordt geen herstelling uitgevoerd;
  • REPAIR_REBUILD: voert snelle kleine herstellingen uit, zoals het herstel van bijkomende sleutels in de 'non cluster'-indices, alsook tijdrovende herstellingen, zoals de heropbouw van indices. Bij deze herstellingen is er geen risico van gegevensverlies.

Bijvoorbeeld: DBCC CHECKDB ('MERCATORTEST',REPAIR_ALLOW_DATA_LOSS ) Om de herstelling te kunnen uitvoeren, moet de databank echter eerst in de modus 'Eén gebruiker' (single-user) staan. Deze wijziging kan worden gerealiseerd via Microsoft Studio Express, software die gratis beschikbaar is op de website van Microsoft. Na de herstelling mag u niet vergeten om de databank opnieuw in de modus 'Meerdere gebruikers' (multi-user) te zetten.

 
single_user