wake-up-neo.net

So benennen Sie die Datenbank im Mehrbenutzermodus um

Ich arbeite an SQL Server 2008 und 2008 R2. Wie kann ich eine Datenbank im Mehrbenutzermodus umbenennen? Ich verwende sp_rename, aber es gibt diesen Fehler zurück:

Meldung 15225, Ebene 11, Status 1, Prozedur sp_rename, Zeile 338

14
Vikrant More

Sie können eine Datenbank nicht umbenennen, während sie verwendet wird. Warten Sie entweder auf ein Wartungsfenster oder zwingen Sie die Datenbank in den Einzelbenutzermodus (der alle aus dem Verkehr zieht):

USE [master];
GO
ALTER DATABASE foo SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
--EXEC sys.sp_renamedb @dbname = N'foo', @newname = N'bar';
ALTER DATABASE foo MODIFY NAME = bar; -- preferred way
GO
ALTER DATABASE bar SET MULTI_USER;
33
Aaron Bertrand

Sie können sp_rename nicht verwenden, um eine Datenbank umzubenennen - der fragliche sp wäre sp_renamedb. Dies muss jedoch in einer zukünftigen Version von SQL Server entfernt werden. Die bevorzugte Methode lautet:

ALTER DATABASE dbname MODIFY NAME = newdbname;

Dies ist jedoch ohne eine exklusive Sperre der Datenbank nicht möglich.

6
MartW

Sie können den SQL Server-Konfigurationsmanager öffnen und den Dienst beenden und starten. Dies funktioniert bei mir mit SQL Server 2008 und 2012 einwandfrei.

Benennen Sie dann die Datenbank direkt im SQL Server Management Studio um.

"Funktioniert bei mir"

Keine wirkliche Einschränkung, aber wenn Sie sagen, dass Sie genau dieselbe Datenbank wiederherstellen möchten, gehen Sie zu den Optionen und ändern den Namen der MDF und der LDF

0
user2038230