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


Переименование компьютера, на котором размещен автономный экземпляр 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 (Transact-SQL) или sp_setnetname (Transact-SQL).

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

См. также