sp_addserver (Transact-SQL)

 

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

Применимо к: SQL Server (начиная с SQL Server 2008 до текущей версии).

Значок ссылки на разделCинтаксические обозначения в Transact-SQL

Синтаксис

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

Аргументы

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

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

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

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

    Локальное переопределение вступает в силу только после перезагрузки компонента Компонент Database Engine.На каждом экземпляре компонента Компонент Database Engine может быть определен только один локальный сервер.

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

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

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

Заметки

Задать или очистить параметры сервера можно с помощью процедуры sp_serveroption.

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

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

Разрешения

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

Примеры

В следующем примере запись компонента Компонент Database Engine, содержащая имя компьютера, на котором размещается SQL Server, изменяется на ACCOUNTS.

sp_addserver 'ACCOUNTS', 'local';

См. также

Переименование компьютера, на который установлен изолированный экземпляр SQL Server
sp_addlinkedserver (Transact-SQL)
sp_dropserver (Transact-SQL)
sp_helpserver (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)
Хранимые процедуры безопасности (Transact-SQL)