när SQL-databasen går in i misstänkt läge blir den otillgänglig. I en sådan situation kommer du varken att kunna ansluta till databasen eller återställa den under Serverstart.
kolla in Infografiken nedan för snabba lösningar för att återställa databasen från misstänkt läge i SQL Server 2008 och högre versioner.
- när går SQL-databasen till misstänkt läge?
- Hur får man SQL-databas ur misstänkt läge?
- vad händer om den här lösningen inte fungerar?
- Hur återställer du SQL-databasen från misstänkt läge med Stellar SQL Recovery Tool?
- ytterligare funktioner i programvaran
- programvaran är betrodd av Microsoft MVPs
- slutsats
när går SQL-databasen till misstänkt läge?
när SQL server misstänker att den primära filgruppen i databasen är skadad eller om databasfilen saknas, är databasstatusen inställd på ’misstänkt’.
det finns också ett brett spektrum av fel som kan resultera i SQL-databas i misstänkt läge.Några av dem listas enligt nedan:
- systemet misslyckas med att öppna enheten där data-eller loggfilen för SQL server finns.
- SQL server kraschar eller startar om mitt i en transaktion, vilket resulterar i en korrupt eller otillgänglig transaktionsloggfil.
- SQL Server försöker öppna en databas, och filen som tillhör den databasen är redan öppen av antivirusprogram installerat på ditt system.
- databasen avslutas onormalt.
- brist på diskutrymme.
- SQL kan inte slutföra en rollback eller roll forward-operation.
- Databasfiler hålls av operativsystemet, tredjeparts backup-programvara etc.
Hur får man SQL-databas ur misstänkt läge?
OBS: Du kan försöka återställa databasen i misstänkt läge från en välkänd säkerhetskopia. Om säkerhetskopian inte är tillgänglig fortsätter du med följande steg.
Följ stegen nedan för att återställa MS SQL-databas från misstänkt läge:
Steg 1: Öppna SSMS och anslut till databasen.
steg 2: Välj alternativet ny fråga.
steg 3: I Frågeredigeringsfönstret anger du följande kod för att stänga av den misstänkta flaggan i databasen och ställa in den i nödsituation:
EXEC sp_resetstatus 'db_name';ALTER DATABASE db_name SET EMERGENCY
OBS!: Om du inte kan ställa in databasen i nödläge, Hoppa till nästa lösning.
steg 4: Utför en konsistenskontroll i huvuddatabasen. För att göra det, kopiera och klistra in följande kod i frågeredigeraren:
DBCC CHECKDB ('database_name')
Steg 5: Ta sedan databasen till Enanvändarläget och rulla tillbaka de tidigare transaktionerna genom att utföra kommandot nedan:
ALTER DATABASE database_name SET SINGLE_USER WITH ROLLBACK IMMEDIATE
steg 6: Ta en fullständig säkerhetskopia av databasen.
Steg 7: försök Databasreparationen tillåta viss dataförlust genom att använda kommandot DBCC CHECKDB ’REPAIR_ALLOW_DATA_LOSS’ :
DBCC CHECKDB ('database_name', REPAIR_ALLOW_DATA_LOSS)
steg 8: Ta databasen i fleranvändarläge:
ALTER DATABASE database_name SET MULTI_USER
ALTER DATABASE database_name SET MULTI_USER
steg 9: uppdatera databasservern.
när du har slutfört dessa steg bör du kunna ansluta till databasen. Vid eventuell dataförlust har du db-säkerhetskopian att återställa från (Steg 6).
vad händer om den här lösningen inte fungerar?
om din serverdatabasfil har blivit allvarligt skadad kan de ovan nämnda stegen misslyckas med att återuppliva databasen. Försök nu återställa databasen genom att använda Stellar Repair för MS SQL.
programvaran kan fixa vanliga SQL – databas korruptionsfel som uppstår på grund av orsaker som databasen i misstänkt läge och flera andra. Programvaran använder avancerade algoritmer för att reparera och återställa SQL db från misstänkt läge till normalt tillstånd (online).
Hur återställer du SQL-databasen från misstänkt läge med Stellar SQL Recovery Tool?
se till att stänga serverinstansen innan du kör Stellar Repair för MS SQL-programvara.
Steg 1: Ladda ner, installera och kör Stellar Repair för MS SQL-programvara.
steg 2: i fönstret Välj databas väljer du bläddra eller sök för att välja SQL-databasfilen (.mdf) av den misstänkta databasen.
steg 3: när filen är vald, slå reparation.
OBS!: se till att avmarkera kryssrutan ’Inkludera raderade poster’ om du inte vill att de raderade posterna ska återställas.
steg 4: förhandsgranska den reparerade MDF-filen för återställbara SQL server-databasobjekt.
Steg 5: Klicka på Spara på Arkiv-menyn för att spara den reparerade filen.
steg 6: från fönstret Spara databas, utför följande:
- Välj MDF under Spara som.
- spara den reparerade filen i ny databas eller levande databas.
- fyll i detaljerna under Anslut till Server.
Steg 7: Klicka på Spara.
öppna SSMS och fäst db (som innehåller den reparerade MDF-filen). Du kommer att kunna komma åt databasen.
ytterligare funktioner i programvaran
- reparerar korrupta MDF-och NDF-filer.
- återställer tabeller, utlösare, nycklar, index, lagrade procedurer, standardvärden, regler, schema etc.
- stöder MS SQL 2019, 2017, 2016, 2014, 2012, 2008 R2 och lägre versioner.
- innehåller flera sparalternativ för att spara den reparerade databasen inklusive MS SQL (MDF), CSV, HTML och XLS.
programvaran är betrodd av Microsoft MVPs
slutsats
det här inlägget diskuterade metoder på ’hur man återställer MS SQL-databas från misstänkt läge’. Det beskrivs de manuella stegen för att åtgärda SQL-databasen i misstänkt läge fråga. Det förklarade också hur du kan använda SQL database repair-programvara för att reparera misstänkt databas.