Umbenennen einer MS SQL-Instanz (ab MS SQL 2005)

Weil ich aktuell die Aufgabe hatte…

Ein Kunde wollte einen neuen Server, identisch zur bereits bestehenden Test- bzw Entwicklungsumgebung.

Ausgangslage:
Der Kunde besitzt einen Server mit zwei Instanzen (Test u. Entwicklung) und möchte nun einen Server für die Produktionsumgebung…
Unsere VMWare-Kollegen schlagen einen 1:1-Klon vor, der Kunde stimmt zu.

Also was mit den MSSQL-Installationen anstellen? Kann man die „Umbenennen“?

Also Google bemüht und widersprüchliche Ergebnisse erhalten, zumal es hier nicht um die Default-Instanz geht sondern um zwei benamte Instanzen: Zumindest seit MSSQL 2005 gibt es die StoredProcedures sp_dropserver und sp_addserver, diese deuten zwar nicht unbedingt auf die Funktion des Umbenennens hin, aber sie erfüllen die gewünschten Funktionen.

– Den aktuellen Namen der Instanz ermitteln
SELECT @@servername

-- Die Instanz aus der Serverliste entfernen
EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘

-- die "neue" Instanz als neuen lokalen Server hinzufügen
EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’

Die SQL-Instanz neustarten

-- den neuen Instanznamen überprüfen
SELECT @@servername

Die zweite Instanz habe dann einfach deinstalliert, VMWare Kollegen glücklich, DBAs glücklich und Kunde zufrieden.