Fel 9003 på en SQL -server kan hindra dig från att komma åt specifika databaser som är flaggade som misstänkt . SQL -servern använder misstänkt läget för att skydda sig själv och databasen från potentiell förlust av data. Innan återhämta sig från detta problem , ta en stund att lära sig vad som orsakar detta fel , vilket kan hjälpa dig att undvika konflikter i framtiden . Misstänker läge
Om SQL Server anser att det finns en konflikt med en databas , kan det gå in i vad som kallas misstänkt läget . SQL Server själva ansökan inte markerats som misstänkt , men det motstridiga eller korrupta databasen är märkt med en misstänkt tag . När databasen är öppen är ett felmeddelande visas på skärmen , som erbjuder en möjlig orsak till varför den inte kan vara öppna vid den tidpunkten. Två möjliga misstänkta mode fel omfattar error 3414 och 9003 .
Error 9003
När du startar SQL -servern och öppna en databas , kan du stöta på fel 9003 , som skriver ut ett meddelande på skärmen så här - " Fel : . 9003 , Severity : 20 , stat : 9 " det kan också följas av ett mer beskrivande meddelande som indikerar en möjlig fråga data korruption eller ett meddelande om att LDF loggfilen är ur synk med MDF datafilen .
anledningar
Förutom en skadad databas , finns det några andra skäl till att SQL -server växlar misstänkt läge när man drar upp databasen . Andra möjliga orsaker är otillräckligt utrymme på SQL -servern , otillräckligt minne , eller databasfiler som är otillgängliga för servern . Filer kanske inte är tillgänglig om en tredje part backup-program har filerna i minnet medan den bearbetar dem för backup . Andra möjliga orsaker till fel 9003 inkluderar oväntad SQL server avstängning , strömavbrott eller felaktig server hårdvara .
Recovery
Återställning från misstänkt läget eller 9003 felet innebär några åtgärder för att få den oroliga databasen igång igen . Starta " SQL Manager " program , och sedan hitta och klicka på databasen som har " ( misstänkt ) " etikett fogas till slutet . Därefter klickar du på " Ny fråga " -knappen i det övre verktygsfältet . När du skriver under TSQL koden och tryck på " Enter" efter varje rad , kommer du att kunna komma åt och söka i databasen utan att få ett felmeddelande :
USE masterGO
ALTER DATABASE databasnamn SET EMERGENCYGO