sp_addserver (Transact-SQL)

Применимо к: SQL Server (все поддерживаемые версии)

Определяет имя локального экземпляра SQL Server. При переименовании SQL Server компьютера используйте sp_addserver, чтобы сообщить экземпляру ядра СУБД SQL Server имя нового компьютера. Эта процедура должна выполняться на всех экземплярах ядра СУБД, размещенных на компьютере. Невозможно изменить имя экземпляра ядра СУБД. Чтобы изменить имя экземпляра, установите новый экземпляр с нужным именем, отключите файлы базы данных от старого экземпляра, подключите базы данных к новому экземпляру и удалите старый экземпляр. Кроме того, вы можете создать имя псевдонима клиента на клиентском компьютере, перенаправив подключение на другой сервер, и имя экземпляра или комбинацию сервер:порт , не изменяя имя экземпляра на сервере.

Topic link iconСинтаксические обозначения в Transact-SQL

Синтаксис


sp_addserver [ @server = ] 'server' ,
     [ @local = ] 'local' 
     [ , [ @duplicate_ok = ] 'duplicate_OK' ]

Аргументы

[ @server = ] 'server' Имя сервера. Имена серверов должны быть уникальными и соответствовать правилам для имен компьютеров Microsoft Windows, хотя пробелы не допускаются. Аргументserver имеет тип sysnameи не имеет значения по умолчанию.

Если на компьютере установлено несколько экземпляров SQL Server, экземпляр работает так, как если бы он был на отдельном сервере. Укажите именованный экземпляр, ссылаясь на сервер как имя_сервера\имя_экземпляра.

[ @local = ] 'LOCAL' Указывает, что сервер, добавляемый в качестве локального сервера. @localvarchar(10) с значением ПО умолчанию NULL. При указании значения LOCAL для аргумента @local аргументу @server присваивается значение имени локального сервера, а функция @@SERVERNAME возвращает при этом значение аргумента server.

SQL Server программа установки устанавливает для этой переменной имя компьютера во время установки. По умолчанию имя компьютера — это способ подключения пользователей к экземпляру SQL Server без дополнительной настройки.

Локальное определение вступает в силу только после перезапуска ядра СУБД. В каждом экземпляре ядра СУБД можно определить только один локальный сервер.

[ @duplicate_ok = ] 'duplicate_OK' Указывает, разрешено ли повторяющееся имя сервера. @duplicate_OKvarchar(13) с значением по умолчанию NULL. @duplicate_OK может иметь только значение duplicate_OK или NULL. Если указан duplicate_OK и имя добавляемого сервера уже существует, ошибка не возникает. Если именованные параметры не используются, то аргумент @local обязателен.

Значения кода возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Remarks

Чтобы задать или очистить параметры сервера, используйте sp_serveroption.

sp_addserver нельзя использовать внутри определяемой пользователем транзакции.

Использование sp_addserver для добавления удаленного сервера прекращается. Вместо этого используйте хранимую процедуру sp_addlinkedserver.

Использование sp_addserver для изменения имени локального сервера может вызвать нежелательные эффекты или неподдерживаемые конфигурации при использовании групп доступности или репликации.

Разрешения

Требует членства в предопределенной роли сервера setupadmin .

Примеры

В следующем примере изменяется запись ядра СУБД для имени компьютера, на котором размещен SQL ServerACCOUNTS.

sp_addserver 'ACCOUNTS', 'local';

См. также:

Переименование компьютера, на котором размещен экземпляр Stand-Alone SQL Serversp_addlinkedserver (Transact-SQL)sp_dropserver (Transact-SQL)sp_helpserver (Transact-SQL)System Stored Procedures (Transact-SQL)Security Stored Procedures (Transact-SQL)