Symptom
Anta att du har Microsoft SQL Server 2014, 2016 eller 2017 installerat. Ett eller flera av följande problem kan uppstå:
-
SQL Server-instansen ser ej ut och ett fel meddelande om att det inte går att överlämna visas. Du kanske måste starta om servern för att återställa.
-
Det kan ta lång tid att återställa en transaktion. I de flesta fall kan du starta om en databas så att den blir snabbare än återställningen. Observera att det kan ta lång tid att slutföra återställningen i avsnittet "Mer information" nedan för information om hur du övervakar återställningar innan du försöker starta om.
-
Du kan se hög väntan på spinlocks som SOS_OBJECT_STORE.
Lösning
Det här problemet är åtgärdat i följande kumulativa uppdateringar för SQL Server:
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabb korrigeringar och alla säkerhets korrigeringar som ingick i den föregående kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Senaste kumulativa uppdateringen för SQL Server 2017
Information om Service Pack för SQL Server
Den här uppdateringen åtgärdas i följande Service Pack för SQL Server:
Service Pack är kumulativa. Varje nytt Service Pack innehåller alla korrigeringar som finns i tidigare service pack, tillsammans med eventuella nya korrigeringar. Vår rekommendation är att tillämpa senaste Service Pack och den senaste kumulativa uppdateringen för detta Service Pack. Du behöver inte installera ett tidigare service Pack innan du installerar den senaste Service Pack-versionen. Använd tabell 1 i följande artikel för att hitta mer information om den senaste service versionen och den senaste kumulativa uppdateringen.
Avgöra version, utgåva och uppdaterings nivå för SQL Server och dess komponenter
Mer information
Det finns många anledningar till att en återställning kan ta lång tid, till exempel en lång transaktion, ett stort antal VLFs i transaktions logg filen, långsam I/O. För att kontrol lera att det problem som beskrivs i den här artikeln är orsak till en långsam återställning rekommenderar vi att följande tekniker används för att övervaka processen för återställningen:
-
Från sys.dm_exec_requestskan du identifiera det session_id vars kommando är inställt på "avlivad/rollback" och kontrol lera att sessionen är ackumulering för både IO-och CPU-tid som indikerar förloppet. Om IO inte ändras kan det bero på att du stöter på det problem som beskrivs i den här artikeln.
-
Fråga sys.dm_tran_database_transactions för att identifiera det aktuella tillståndet för återställningen med hjälp av en fråga som följande:
Välj getDate () som CurrentTime, database_transaction_next_undo_lsn, database_transaction_begin_lsn, t.transaction_id, database_transaction_begin_time, database_transaction_log_record_count, db_name (t.database_id)
FRÅN sys.dm_tran_database_transactions t
Gå med sys.dm_exec_requests s PÅ t.transaction_id = s.transaction_id
DÄR t.database_id = db_id (' <databas namn') och s.session_id =<Session_id utföra återställnings åtgärden>
Obs!
I ovanstående fråga
database_transaction_next_undo_lsn är LSN för nästa post att ångra. database_transaction_begin_lsn är LSN för BEGIN-posten för transaktionen i transaktions loggen.
database_transaction_next_undo_lsn bör minskas med varje ögonblicks bild av frågan. Återställningen slutförs när database_transaction_next_undo_lsn når database_transaction_begin_lsn.
Målet här är att ta några stillbilder av den föregående frågan i ett förutbestämdt intervall och sedan använda delta av LSNs som bearbetas i database_transaction_next_undo_lsn inom det intervallet och extrapolera tiden det tar för att få en uppskattning på database_transaction_next_undo_lsn att nå database_transaction_begin_lsn.
Om återställningen pågår med en hyfsad hastighet mellan varje ögonblicks bild föreslår vi att återställningen måste slutföras för att det ska gå att slutföra den utan att starta om SQL Server-instansen.
I följande artiklar finns mer information om hur du tar lång tid:
-
SQL Server (2000, 2005, 2008): återställning/återställning tar längre tid än förväntat
-
Hur en fil struktur kan påverka databas återställnings tiden
-
Spåra status för databas återställning med hjälp av information från DMV
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Referenser
Lär dig mer om terminologinsom Microsoft använder för att beskriva program varu uppdateringar.