Podczas instalowania programu Microsoft SQL Server tworzona jest wewnętrzna nazwa wystąpienia programu SQL Server na podstawie bieżącej nazwy hosta. Jednak podczas zmiany nazwy komputera / serwera nazwa serwera SQL w metadanych (przechowywanych w sys.servers) nie jest automatycznie aktualizowana, w wyniku czego mogą wystąpić różne problemy podczas pracy z SQL. W tym podręczniku pokażemy, jak poprawnie zaktualizować metadane w SQL i zmienić nazwę serwera bez całkowitej ponownej instalacji MSSQL. Instrukcja dotyczy autonomicznych (nieklastrowanych) wersji SQL Server od MS SQL 2000 do 2012.
Wskazówka. Możesz zmienić tylko nazwę północy; nie możesz zmienić nazwy instancji (instancji) SQL Server bez ponownej instalacji.Otwórz konsolę SQL Server Management Studio i za pomocą następującego zapytania sprawdź bieżącą nazwę hosta i nazwę instancji SQL:
Wybierz @@ nazwa_serwera nazwa_serwera, nazwa_hosta () nazwa_hosta
Jak widać:
- Nazwa serwera (nazwa hosta): DESKTOP-V2OE3P0
- Pełna nazwa wystąpienia SQL (nazwa_serwera): DESKTOP-V2OE3P0 \ SQLDB
Zmień nazwę komputera i uruchom go ponownie:
Zmień nazwę komputera -NowaNazwa Sql-Srv1 -Restart
Po ponownym uruchomieniu spróbuj połączyć się ze starą nazwą serwera SQL: DESKTOP-V2OE3P0 \ SQLDB. Pojawi się błąd, ponieważ nazwa serwera uległa zmianie.
Nie można połączyć się z DESKTOP-V2OE3P0 \ SQLDB.Wystąpił błąd związany z siecią lub natychmiastowy podczas nawiązywania połączenia z programem SQL Server. Serwer nie został znaleziony lub był niedostępny. Sprawdź, czy nazwa instancji jest poprawna i czy SQL Server jest skonfigurowany do zezwalania na połączenia zdalne. (dostawca: SQL Network Interface, błąd: 26 - Błąd podczas lokalizowania serwera / wystąpienia) (Microsoft SQL Server)
Sprawdź ponownie nazwę hosta i nazwę instancji:
Wybierz @@ nazwa_serwera nazwa_serwera, nazwa_hosta () nazwa_hosta
W takim przypadku nazwa instancji nie jest zgodna z nazwą komputera i odnosi się do starej nazwy komputera DESKTOP-V2OE3P0.
Aby zmienić nazwę nazwanego wystąpienia SQL, uruchom następującą komendę TSQL.
Usuń starą nazwę:
sp_dropserver "DESKTOP-V2OE3P0 \ SQLDB";
Idź
Dodaj nową nazwę:
sp_addserver "Sql-Srv1 \ SQLDB", lokalny;
GO
Jeśli chcesz zmienić nazwę serwera domyślnej instancji SQL Server, polecenie jest następujące:
sp_dropserver "OldName";
GO
sp_addserver „NewName”, lokalny;
GO
Dodatkowe kroki
Jeśli wystąpi błąd podczas uruchamiania polecenia sp_dropserver:
Msg 15190, poziom 16, stan 1, procedura sp_dropserver, wiersz 56Najprawdopodobniej istnieją zdalne połączenia z serwerem DESKTOP-V2OE3P0. Możesz je zresetować za pomocą takich poleceń. W przypadku instancji domyślnej:
sp_dropremotelogin DESKTOP-V2OE3P0;
GO
Dla nazwanych:
sp_dropremotelogin DESKTOP-V2OE3P0 \ SQLDB;
GO
Sprawdź, czy nazwa serwera w metadanych została zaktualizowana:
WYBIERZ @@ SERVERNAME JAKO „ServerName”
WYBIERZ * Z SYS.SERVERS
Jak widać, nazwa serwera uległa zmianie. Pozostaje zrestartować usługę SQL Server:
Net Stop MSSQL $ SQLDB && Net Start MSSQL $ SQLDB
Jest ważne!
- Ta metoda jest odpowiednia tylko do zmiany nazwy autonomicznego serwera SQL. Aby zmienić nazwę programu SQL Server w klastrze pracy awaryjnej, należy użyć konsoli zarządzania klastrami.
- Nie można zmienić nazwy serwera zaangażowanego w replikację lub dublowanie
- Jeśli usługi raportowania są zainstalowane, nie będą one dostępne po zmianie nazwy (https://msdn.microsoft.com/en-us/library/ms345235.aspx)