Udostępnij za pośrednictwem


Zmienianie nazwy komputera, który hostuje autonomiczne wystąpienie programu SQL Server

Dotyczy:programu SQL Server — tylko system Windows

Po zmianie nazwy komputera z uruchomionym programem SQL Server nowa nazwa jest rozpoznawana podczas uruchamiania programu SQL Server. Nie musisz ponownie uruchamiać Instalatora, aby zresetować nazwę komputera. Zamiast tego wykonaj następujące kroki, aby zaktualizować metadane systemu przechowywane w sys.servers i zgłaszane przez funkcję systemową @@SERVERNAME. Zaktualizuj metadane systemu, aby odzwierciedlały zmiany nazw komputerów dla połączeń zdalnych i aplikacji korzystających z @@SERVERNAMElub które wysyłają zapytanie o nazwę serwera z sys.servers.

Poniższych kroków nie można użyć do zmiany nazwy wystąpienia programu SQL Server. Można ich użyć tylko do zmiany nazwy części nazwy wystąpienia odpowiadającej nazwie komputera. Na przykład można zmienić komputer o nazwie MB1 hostujący wystąpienie programu SQL Server o nazwie Instance1 na inną nazwę, taką jak MB2. Jednak część wystąpienia nazwy, Instance1, pozostaje niezmieniona. W tym przykładzie \\<ComputerName>\<InstanceName> zostanie zmieniona z \\MB1\Instance1 na \\MB2\Instance1.

Warunki wstępne

Przed rozpoczęciem procesu zmiany nazwy przejrzyj następujące informacje:

  • Gdy instancja SQL Server jest częścią klastra przełączania awaryjnego SQL Server, proces zmiany nazwy komputera różni się od komputera, który hostuje samodzielną instancję. Aby uzyskać więcej informacji, zobacz Zmienianie nazwy wystąpienia klastra failover programu SQL Server.

  • Program SQL Server nie obsługuje zmiany nazw komputerów, które są zaangażowane w replikację, z wyjątkiem sytuacji, gdy używasz wysyłania dzienników z replikacją. Nazwę komputera pomocniczego w wysyłaniu dziennika można zmienić, jeśli komputer podstawowy zostanie trwale utracony. Aby uzyskać więcej informacji, zobacz wysyłanie dzienników i replikacja (SQL Server).

  • Po zmianie nazwy komputera skonfigurowanego do używania usług Reporting Services usługi Reporting Services mogą nie być dostępne po zmianie nazwy komputera. Aby uzyskać więcej informacji, zobacz Zmienianie nazwy komputera serwera raportów.

  • W przypadku zmiany nazwy komputera skonfigurowanego do używania dublowania bazy danych należy wyłączyć dublowanie bazy danych przed operacją zmiany nazwy. Następnie ponownie ustanów dublowanie bazy danych przy użyciu nowej nazwy komputera. Metadane dublowania bazy danych nie są aktualizowane automatycznie w celu odzwierciedlenia nowej nazwy komputera. Aby zaktualizować metadane systemu, wykonaj następujące czynności.

  • Użytkownicy, którzy łączą się z programem SQL Server za pośrednictwem grupy systemu Windows, która korzysta z zakodowanego odwołania do nazwy komputera, mogą nie być w stanie nawiązać połączenia z programem SQL Server. Ten problem może wystąpić po zmianie nazwy, jeśli grupa systemu Windows określa starą nazwę komputera. Aby upewnić się, że takie grupy systemu Windows mają łączność z programem SQL Server po operacji zmiany nazwy, zaktualizuj grupę systemu Windows, aby określić nową nazwę komputera.

Połączenie z programem SQL Server można nawiązać przy użyciu nowej nazwy komputera po ponownym uruchomieniu programu SQL Server. Aby upewnić się, że @@SERVERNAME zwraca zaktualizowaną nazwę wystąpienia serwera lokalnego, należy ręcznie uruchomić następującą procedurę, która ma zastosowanie do danego scenariusza. Używana procedura zależy od tego, czy aktualizujesz komputer hostujący domyślne lub nazwane wystąpienie programu SQL Server.

Zmień nazwę komputera, który hostuje samodzielne wystąpienie programu SQL Server

  • W przypadku komputera o zmienionej nazwie, który hostuje domyślne wystąpienie programu SQL Server, uruchom następujące procedury:

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

    Uruchom ponownie wystąpienie programu SQL Server.

  • W przypadku zmienionej nazwy komputera, który hostuje nazwane wystąpienie programu SQL Server, uruchom następujące procedury:

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

    Uruchom ponownie wystąpienie programu SQL Server.

Po operacji zmiany nazwy

Po zmianie nazwy komputera wszystkie połączenia, które używały starej nazwy komputera, muszą łączyć się przy użyciu nowej nazwy.

Weryfikowanie operacji zmiany nazwy

  • Wybierz informacje z @@SERVERNAME lub sys.servers. Funkcja @@SERVERNAME zwraca nową nazwę, a tabela sys.servers zawiera nową nazwę. W poniższym przykładzie pokazano użycie @@SERVERNAME.

    SELECT @@SERVERNAME AS 'Server Name';
    

Dodatkowe zagadnienia

Logowania zdalne

Jeśli komputer ma jakiekolwiek zdalne logowania, uruchomienie sp_dropserver może wygenerować błąd podobny do następującego wyjścia:

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

Aby rozwiązać ten problem, należy usunąć zdalne logowania dla tego serwera.

  • W przypadku instancji domyślnej uruchom następującą procedurę:

    EXEC sp_dropremotelogin old_name;
    GO
    
  • W przypadku nazwanego wystąpienia uruchom następującą procedurę:

    EXEC sp_dropremotelogin old_name\instancename;
    GO
    

Konfiguracje serwera połączonego

Operacja zmiany nazwy komputera ma wpływ na konfiguracje serwera połączonego. Użyj sp_addlinkedserver lub sp_setnetname, aby zaktualizować odwołania do nazw komputerów. Aby uzyskać więcej informacji, zobacz sp_addlinkedserver lub sp_setnetname.

Nazwy aliasów klienta

Operacja zmiany nazwy komputera ma wpływ na aliasy klienta, które używają nazwanych potoków. Jeśli na przykład alias PROD_SRVR został utworzony, aby wskazywać na SRVR1 i wykorzystuje protokół nazwanych potoków, to nazwa potoku wygląda następująco: \\SRVR1\pipe\sql\query. Po zmianie nazwy komputera ścieżka nazwanego potoku nie będzie już prawidłowa. Aby uzyskać więcej informacji o nazwanych potokach, zobacz Tworzenie prawidłowego ciągu połączenia przy użyciu nazwanych potoków.