Umbenennen eines Computers, der eine eigenständige Instanz von SQL Server hostet

Gilt für: SQL Server - nur Windows

Wenn Sie den Namen des Computers ändern, auf dem SQL Serverausgeführt wird, wird der neue Name beim Starten von SQL Server erkannt. Sie müssen das Setup nicht erneut ausführen, um den Computernamen zurückzusetzen. Führen Sie stattdessen die folgenden Schritte aus, um die Systemmetadaten zu aktualisieren, die in sys.servers gespeichert sind und von der Systemfunktion @@SERVERNAME gemeldet werden. Aktualisieren Sie die Systemmetadaten, um Änderungen des Computernamens für Remoteverbindungen und -anwendungen widerzuspiegeln, die @@SERVERNAME verwenden oder die den Servernamen von sys.servers abfragen.

Die folgenden Schritte können nicht verwendet werden, um eine Instanz von SQL Server umzubenennen. Die Schritte können nur verwendet werden, um den Teil des Instanznamens umzubenennen, der dem Computernamen entspricht. Sie können beispielsweise einen Computer mit dem Namen MB1 umbenennen (z. B. in Instance1), der eine Instanz von SQL Server mit dem Namen MB2 hostet. Der Teil des Namens, der sich auf die Instanz bezieht, Instance1, bleibt jedoch unverändert. In diesem Beispiel wird \\<ComputerName>\<InstanceName> von \\MB1\Instance1 in \\MB2\Instance1 geändert.

Voraussetzungen

Bevor Sie den Umbenennungsprozess beginnen, überprüfen Sie die folgenden Informationen:

  • Wenn eine Instanz von SQL Server Teil eines SQL Server -Failoverclusters ist, unterscheidet sich der Umbenennungsvorgang des Computers von einem Computer, der eine eigenständige Instanz hostet. Weitere Informationen finden Sie unter Umbenennen einer SQL Server-Failoverclusterinstanz.

  • SQL Server unterstützt nicht die Umbenennung von Computern, die an einer Replikation beteiligt sind. Eine Ausnahme stellt die Verwendung des Protokollversands mit Replikation dar. Der sekundäre Computer beim Protokollversand kann umbenannt werden, wenn eine Wiederherstellung des primären Computers nicht mehr möglich ist. Weitere Informationen finden Sie unter Protokollversand und Replikation (SQL Server).

  • Wenn Sie einen Computer umbenennen, der für die Verwendung von Reporting Services konfiguriert wurde, kann es sein, dass Reporting Services nach der Namensänderung nicht mehr zur Verfügung steht. Weitere Informationen finden Sie unter Umbenennen eines Berichtsservercomputers.

  • Wenn Sie einen für die Verwendung der Datenbankspiegelung konfigurierten Computer umbenennen, müssen Sie die Datenbankspiegelung vor dem Umbenennungsvorgang deaktivieren. Aktivieren Sie Datenbankspiegelung dann mit dem neuen Computernamen erneut. Die Metadaten für die Datenbankspiegelung werden nicht automatisch aktualisiert, um den neuen Namen des Computers widerzuspiegeln. Führen Sie die folgenden Schritte aus, um die Systemmetadaten zu aktualisieren.

  • Es kann sein, dass Benutzer, die über eine Windows-Gruppe mit SQL Server verbunden sind, in der ein hartcodierter Verweis auf den Computernamen verwendet wird, die Verbindung zu SQL Servernicht herstellen können. Dieses Problem kann nach der Umbenennung passieren, wenn die Windows-Gruppe den alten Computernamen angibt. Aktualisieren Sie die Windows-Gruppe für die Verwendung des neuen Computernamens, um sicherzustellen, dass solche Windows-Gruppen nach dem Umbenennungsvorgang für die Verbindung mit SQL Server verwendet werden können.

Sie können mithilfe des neuen Computernamens eine Verbindung zu SQL Server herstellen, nachdem Sie SQL Serverneu neu starten. Um sicherzustellen, dass @@SERVERNAME den aktualisierten Namen der lokalen Serverinstanz zurückgibt, führen Sie manuell eine der folgenden Prozeduren aus, die für Ihr Szenario zutrifft. Die verwendete Prozedur hängt davon ab, ob Sie einen Computer aktualisieren, der eine Standardinstanz oder eine benannte Instanz von SQL Serverhostet.

Umbenennen eines Computers, der eine eigenständige Instanz von SQL Server hostet

  • Führen Sie für einen umbenannten Computer, der eine Standardinstanz von SQL Serverhostet, die folgenden Prozeduren aus:

    EXEC sp_dropserver '<old_name>';
    GO
    EXEC sp_addserver '<new_name>', local;
    GO
    

    Starten Sie die Instanz von SQL Serverneu.

  • Führen Sie für einen umbenannten Computer, der eine benannte Instanz von SQL Serverhostet, die folgenden Prozeduren aus:

    EXEC sp_dropserver '<old_name\instancename>';
    GO
    EXEC sp_addserver '<new_name\instancename>', local;
    GO
    

    Starten Sie die Instanz von SQL Serverneu.

Nach dem Umbenennungsvorgang

Nachdem ein Computer umbenannt ist, müssen alle Verbindungen, bei denen der alte Computername verwendet wurde, mithilfe des neuen Namens hergestellt werden.

Überprüfen des Umbenennungsvorgangs

  • Wählen Sie entweder Informationen von @@SERVERNAME oder von sys.servers aus. Die @@SERVERNAME-Funktion gibt den neuen Namen zurück, und in der Tabelle sys.servers wird der neue Name angezeigt. Im folgenden Beispiel wird die Verwendung von @@SERVERNAME veranschaulicht.

    SELECT @@SERVERNAME AS 'Server Name';
    

Weitere Überlegungen

Remote-Anmeldungen

Wenn der Computer über Remoteanmeldungen verfügt, wird beim Ausführen von sp_dropserver ggf. ein Fehler generiert, der der folgenden Ausgabe ähnelt:

Server: Msg 15190, Level 16, State 1, Procedure sp_dropserver, Line 44 There are still remote logins for the server 'SERVER1'.

Um den Fehler zu beheben, müssen Sie Remoteanmeldungen für diesen Server löschen.

  • Führen Sie für eine Standardinstanz die folgende Prozedur aus:

    EXEC sp_dropremotelogin old_name;
    GO
    
  • Führen Sie für eine benannte Instanz die folgende Prozedur aus:

    EXEC sp_dropremotelogin old_name\instancename;
    GO
    

Konfigurationen für Verbindungsserver

Die Umbenennungsoperationen des Computers wirkt sich auf Konfigurationen der Verbindungsserver aus. Verwenden Sie sp_addlinkedserver oder sp_setnetname, um Verweise auf Computernamen zu aktualisieren. Weitere Informationen finden Sie unter sp_addlinkedserver oder sp_setnetname.

Client-Aliasnamen

Der Umbenennungsvorgang des Computers wirkt sich auf Client-Alias aus, die Named Pipes verwenden. Wenn z. B. ein Alias „PROD_SRVR“ erstellt wurde, um auf SRVR1 zu verweisen, und dieser das Named Pipes-Protokoll verwendet, lautet der Pipe-Name \\SRVR1\pipe\sql\query. Nachdem der Computer umbenannt wurde, ist der Pfad der Named Pipe nicht mehr gültig. Weitere Informationen zu Named Pipes finden Sie unter Erstellen einer gültigen Verbindungszeichenfolge mithilfe von Named Pipes.