Ich versuche, eine Verbindung zu einer SQL Server-Datenbank herzustellen. Ich erhalte diesen Fehler
Database 'XXX' is in transition. Try the statement later.
Ich habe heute eine lange Abfrage abgebrochen, aber aus irgendeinem Grund kann ich die Datenbank nicht wiederherstellen. Kann ich irgendetwas tun?
sql-server
Rod Johnson
quelle
quelle
Antworten:
Dies kann manchmal vorkommen, wenn Sie versuchen, eine Datenbank offline zu schalten oder bestimmte andere Vorgänge auszuführen, die fehlschlagen. Manchmal kann die Sperre aufgehoben werden, wenn Sie die SSMS-Instanz schließen, die den Vorgang ausgeführt hat, und sie dann erneut öffnen. Schließen Sie alle an den Server angeschlossenen SSMS-Instanzen und öffnen Sie sie erneut.
Dies kann auch auftreten, wenn Sie versuchen, die Datenbank offline zu schalten, während eine lange Abfrage ausgeführt wird. Überprüfen Sie den Aktivitätsmonitor und versuchen Sie, alle lang laufenden Abfragen zu beenden, falls zutreffend und sicher.
Wenn keines der oben genannten Verfahren funktioniert, schließen Sie alle SSMS-Instanzen und starten Sie SQL über den SQL Server-Konfigurations-Manager neu. In der Regel wird dies behoben, obwohl sich die Datenbank zunächst möglicherweise im Wiederherstellungsmodus befindet.
quelle
Seltsamerweise habe ich dieses Problem durch einfaches Schließen von SSMS und erneutes Öffnen behoben.
quelle
Während das Schließen von SSMS auch für mich funktioniert hat, können Sie je nach Problem Folgendes versuchen:
Diese Idee entstand aus dieser Frage (und persönlichen Erfahrung): https://stackoverflow.com/questions/4230290/sql-server-2008-how-do-i-disconnect-everyone-from-my-db
quelle
In SQL Server Management Studio ist eine Option verfügbar, mit der eine Datenbank online / offline geschaltet werden kann. Es bedarf jedoch einer behördlichen Genehmigung.
Um darauf zuzugreifen, klicken Sie mit der rechten Maustaste auf Datenbank -> Aufgaben -> Online schalten.
quelle
Ich weiß, es ist bereits beantwortet, aber nur um hinzuzufügen; Wenn die Situation so ist, dass Sie versuchen, es offline zu schalten, und es dann fehlschlägt, können Sie versuchen, die SPID zu beenden, die versucht, den Datenbankstatus zu ändern.
Führen Sie sp_who oder sp_who2 aus, und suchen Sie eine SPID, die sich in der Datenbank dreht, und versuchen Sie, die Datenbank offline zu schalten. Wenn Sie diese SPID TÖTEN, verbleibt entweder eine Online- oder eine Offline-Datenbank, die sich NICHT im Übergangszustand befindet.
quelle