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


sp_serveroption (Transact-SQL)

Область применения: SQL Server

Устанавливает параметры сервера для удаленных и связанных серверов.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_serveroption
    [ @server = ] N'server'
    , [ @optname = ] 'optname'
    , [ @optvalue = ] N'optvalue'
[ ; ]

Аргументы

[ @server = ] N'server'

Имя сервера, для которого необходимо задать параметр. @server — sysname, без значения по умолчанию.

[ @optname = ] 'optname'

Параметр, заданный для указанного сервера. @optname — varchar(35), без значения по умолчанию. @optname может быть любым из следующих значений.

значение Описание
Совместимость с параметрами сортировки Влияет на выполнение распределенных запросов на связанные серверы. Если для этого параметра задано trueзначение , SQL Server предполагает, что все символы в связанном сервере совместимы с локальным сервером, что касается последовательности наборов символов и сортировки (или порядок сортировки). Это позволяет SQL Server отправлять сравнения по символьным столбцам поставщику. Если этот параметр не задан, SQL Server всегда оценивает сравнения по столбцам символов локально.

Этот параметр необходимо задать только в том случае, если источник данных, соответствующий связанному серверу, имеет тот же набор символов и тот же порядок сортировки, что и локальный сервер.
Имя сортировки Указывает имя сортировки, используемой удаленным источником данных, если используется true удаленная сортировка, и источник данных не является источником данных SQL Server. Имя должно быть одним из параметров сортировки, поддерживаемых SQL Server.

Используйте этот параметр при доступе к источнику данных OLE DB, отличному от SQL Server, но параметры сортировки которого соответствуют одному из параметров сортировки SQL Server.

Связанный сервер должен поддерживать использование единых параметров сортировки для всех столбцов на этом сервере. Не устанавливайте этот параметр, если связанный сервер поддерживает несколько параметров сортировки в одном источнике данных или если параметры сортировки связанного сервера не могут соответствовать одному из параметров сортировки SQL Server.
Время ожидания подключения Указывает значение времени ожидания в секундах для подключения к связанному серверу.

Если 0параметр времени ожидания подключения использует значение по умолчанию, настроенное для remote login timeout (s) параметра. Значение remote login timeout (s) по умолчанию — 10.

Этот параметр можно просмотреть в представлении каталога с помощью следующего sys.configurations запроса: SELECT name, value_in_use FROM sys.configurations WHERE name like 'remote login timeout (s)';
доступ к данным Разрешает и запрещает доступ распределенных запросов к связанному серверу. Можно использовать только для sys.server записей, добавленных через sp_addlinkedserver.
dist Распространитель.
name Указывает имя объекта связанного сервера.

Изменение имени отражается в значении, возвращаемом столбцом name sys.servers представления каталога, не затрагивая удаленный источник данных.
Строка поставщика Указывает строку OLE DB, которая определяет источник подключения связанного сервера.

Изменение строки поставщика отражается в значении, возвращаемом sys.servers столбцом provider_string представления каталога.
отложенная проверка схемы Определяет, проверяется ли схема удаленных таблиц.

Если trueпропустить проверку схемы удаленных таблиц в начале запроса.
pub Издатель.
время ожидания запроса Указывает значение времени ожидания для запросов к связанному серверу.

Если 0используйте sp_configure значение по умолчанию.
rpc Включает вызов RPC с заданного сервера.
rpc out Включает вызов RPC на заданный сервер.
sub Подписчик.
system Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
использование удаленного сортировки Определяет, используется ли параметры сортировки удаленного столбца или локального сервера.

Если trueдля источников данных SQL Server используется параметры сортировки удаленных столбцов, а параметры сортировки, указанные в имени сортировки, используются для источников данных, отличных от SQL Server. Это значение по умолчанию.

Если falseраспределенные запросы всегда используют параметры сортировки по умолчанию локального сервера, а имя сортировки и параметры сортировки удаленных столбцов игнорируются.
Повышение удаленной транзакции proc Используйте этот параметр для защиты действий процедуры между серверами с помощью транзакции координатора распределенных транзакций (MS DTC). Если этот параметр имеет значение true (или on), вызов удаленной хранимой процедуры запускает распределенную транзакцию и записывает транзакцию в MS DTC. Экземпляр SQL Server, вызывающий удаленную хранимую процедуру, является инициатором транзакции и контролирует ее завершение. При выполнении последующей инструкции COMMIT TRANSACTION или ROLLBACK TRANSACTION для подключения управляющий экземпляр запрашивает, что MS DTC управляет завершением распределенной транзакции на компьютерах, участвующих в этом подключении.

После запуска распределенной транзакции Transact-SQL удаленные вызовы хранимых процедур можно выполнять в других экземплярах SQL Server, которые были определены как связанные серверы. Все связанные серверы включены в распределенную транзакцию Transact-SQL, и MS DTC гарантирует, что транзакция завершена на каждом связанном сервере.

Если этот параметр имеет false значение (или off), локальная транзакция не повышена до распределенной транзакции при вызове удаленного вызова процедуры на связанном сервере.

Если перед вызовом процедуры между серверами транзакция уже является распределенной транзакцией, этот параметр не действует. Вызов процедуры к связанному серверу выполняется под той же распределенной транзакцией.

Если в соединении нет активной транзакции перед вызовом процедуры "сервер — сервер", этот параметр не действует. Процедура выполняется на связанном сервере без активных транзакций.

Значение по умолчанию для этого параметра — true (или on).

[ @optvalue = ] N'optvalue'

Указывает, следует ли включить @optname (true или on), или отключить (false или off). @optvalue — nvarchar(128), без значения по умолчанию.

  • Для параметров времени ожидания подключения и времени ожидания запроса @optvalue может быть неотрицательное целое число.

  • Для параметра имени сортировки @optvalue может быть именем сортировки или NULL.

  • Для параметра имени @optvalue может быть строка, представляющая новое имя подключения к связанному серверу.

  • Для параметра строки поставщика @optvalue может быть строкой или NULLпредставляет новый источник OLE DB подключения к связанному серверу.

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

0 (успешно) или 1 (сбой).

Замечания

Если для параметра совместимости сортировки задано trueзначение , для параметра сортировки автоматически задано NULLимя сортировки.

Если для имени сортировки задано значение, отличное от NULL, параметр параметров сортировки, совместимый автоматически, имеет значение false.

Разрешения

Необходимо разрешение ALTER ANY LINKED SERVER на сервере.

Примеры

Следующий пример настраивает связанный сервер, соответствующий другому экземпляру SQL Server, SEATTLE3для совместимости параметров сортировки с локальным экземпляром SQL Server.

USE master;
GO
EXEC sp_serveroption N'SEATTLE3', 'collation compatible', N'true';
GO

В следующем примере переименовывается подключение к связанному серверу.PRODVM01\ProdSQL01 LinkToProdSQL01

USE master;
GO
EXEC sp_serveroption
    @server = N'PRODVM01\ProdSQL01',
    @optname = 'name',
    @optvalue = N'LinkToProdSQL01';
GO