Поделиться через


Переименование компьютера, на котором размещен автономный экземпляр SQL Server

Область применения: SQL Server — только Для Windows

При изменении имени компьютера под управлением SQL Server новое имя распознается во время запуска SQL Server. Чтобы сбросить имя компьютера, вам не нужно заново запускать программу установки. Вместо этого выполните следующие действия, чтобы обновить системные метаданные, хранящиеся sys.servers и сообщаемые системной функцией @@SERVERNAME. Обновите системные метаданные, чтобы отразить изменения имени компьютера для удаленных подключений и приложений, использующих @@SERVERNAMEили запрашивающих имя сервера.sys.servers

Следующие шаги нельзя использовать для переименования экземпляра SQL Server. Ими можно воспользоваться только для изменения части имени экземпляра, соответствующей имени компьютера. Например, можно изменить имя компьютера MB1, на котором размещен экземпляр SQL Server с именем Instance1, на другое имя, например, MB2. Однако часть экземпляра имени Instance1остается неизменной. В этом примере \\<ComputerName>\<InstanceName> изменится на \\MB1\Instance1\\MB2\Instance1.

Предварительные условия

Прежде чем приступить к процессу переименования, обратите внимание на следующее:

  • Если экземпляр SQL Server является частью отказоустойчивого кластера SQL Server, процесс переименования компьютера отличается от компьютера, на котором размещен автономный экземпляр. Дополнительные сведения см. в статье Переименование экземпляра отказоустойчивого кластера SQL Server.

  • SQL Server не поддерживает переименование компьютеров, участвующих в репликации, за исключением случаев, когда вы используете доставку журналов с репликацией. Вторичный компьютер в лог-шиппинге может быть переименован, если основной компьютер окончательно потерян. Дополнительные сведения см. в статье Репликация и доставка журналов (SQL Server).

  • При переименовании компьютера, настроенного на использование служб Reporting Services, службы Reporting Services могут быть недоступны после изменения имени компьютера. Дополнительные сведения см. в разделе Переименование компьютера, на котором установлен сервер отчетов.

  • Если компьютер настроен для использования зеркального отображения базы данных, перед его переименованием оно должно быть отключено. Затем заново настройте зеркалирование базы данных с новым именем компьютера. Метаданные зеркального отображения базы данных не обновляются автоматически, чтобы отразить новое имя компьютера. Выполните следующие шаги, чтобы обновить системные метаданные.

  • Пользователи, подключающиеся к SQL Server через группу Windows, использующую жестко закодированную ссылку на имя компьютера, могут не подключаться к SQL Server. Эта проблема может возникать после переименования, если группа Windows указывает старое имя компьютера. Чтобы убедиться, что такие группы Windows имеют подключение к SQL Server после операции переименования, обновите группу Windows, чтобы указать новое имя компьютера.

Вы можете подключиться к SQL Server с помощью нового имени компьютера после перезапуска SQL Server. Чтобы @@SERVERNAME возвращал обновленное имя экземпляра локального сервера, необходимо вручную выполнить следующую процедуру, подходящую вашему сценарию. Используемая процедура зависит от того, обновляется ли компьютер, на котором размещен экземпляр SQL Server по умолчанию или именованный экземпляр.

Переименование компьютера, на котором размещен автономный экземпляр SQL Server

  • Для переименованного компьютера, на котором размещен экземпляр SQL Server по умолчанию, выполните следующие процедуры:

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

    Перезапустите экземпляр SQL Server.

  • Для переименованного компьютера, на котором размещен именованный экземпляр SQL Server, выполните следующие процедуры:

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

    Перезапустите экземпляр SQL Server.

После операции переименования

После переименования компьютера все подключения, использующие старое имя компьютера, должны подключаться с помощью нового имени.

Проверка операции переименования

  • Выберите сведения из @@SERVERNAME или sys.servers. Функция @@SERVERNAME возвращает новое имя, а sys.servers в таблице отображается новое имя. В следующем примере показано использование @@SERVERNAME.

    SELECT @@SERVERNAME AS 'Server Name';
    

Дополнительные рекомендации

Удаленные имена входа

Если у компьютера есть удаленные имена входа, при выполнении sp_dropserver может возникнуть ошибка, аналогичная следующим выходным данным:

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

Чтобы исправить ошибку, необходимо отключить удаленный вход в систему для этого сервера.

  • Для экземпляра по умолчанию выполните следующие действия:

    EXEC sp_dropremotelogin old_name;
    GO
    
  • В случае с именованным экземпляром выполните следующую процедуру:

    EXEC sp_dropremotelogin old_name\instancename;
    GO
    

Конфигурации связанного сервера

Операция переименования компьютера влияет на конфигурации связанного сервера. Используйте sp_addlinkedserver или sp_setnetname для обновления ссылок на имена компьютеров. Дополнительные сведения см. в sp_addlinkedserver или sp_setnetname.

Имена псевдонимов клиента

Операция переименования компьютера затрагивает псевдонимы клиентов, которые используют именованные каналы. Например, если псевдоним PROD_SRVR был создан, чтобы указывать на SRVR1 и использовать протокол именованных каналов, имя канала выглядит следующим образом \\SRVR1\pipe\sql\query. После переименования компьютера путь именованного канала больше не будет действительным. Дополнительные сведения об именованных каналах см. в разделе Создание допустимой строки подключения, использующей именованные каналы.