Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como editar opções de servidor vinculado usando T-SQL


Se você criou anteriormente um servidor vinculado, mas agora deseja atualizar uma ou mais de suas opções de servidor, você pode fazer isso por meio da GUI do SQL Server Management Studio ou com T-SQL.

Se você optar por fazer isso com T-SQL, a sp_serveroption procedimento armazenado do sistema é o que você precisa.

Sintaxe


A sintaxe para sp_serveroption fica assim:
sp_serveroption [@server = ] 'server'   
      ,[@optname = ] 'option_name'       
      ,[@optvalue = ] 'option_value' ;

O primeiro argumento (@server ) é o nome do servidor vinculado.

O segundo argumento (@optname ) especifica o nome da opção e o terceiro argumento (@optvalue ) especifica seu valor.

Exemplo 1 – Habilitar uma opção


Aqui está um exemplo de uso de sp_serveroption para habilitar uma opção em um servidor vinculado.
EXEC sp_serveroption 
    @server = 'Homer', 
    @optname = 'rpc out', 
    @optvalue = 'true';

Então, neste caso, defino o rpc out opção para true em um servidor vinculado chamado Homer .

Como a sintaxe indica, você também pode omitir os nomes dos parâmetros, assim:
EXEC sp_serveroption 'Homer', 'rpc out', 'true';

Verifique a configuração


Podemos verificar nossa configuração de saída de RPC consultando o sys.servers visualizar.
SELECT 
    is_rpc_out_enabled
FROM sys.servers
WHERE name = 'Homer';

Resultado:
+----------------------+
| is_rpc_out_enabled   |
|----------------------|
| 1                    |
+----------------------+

Exemplo 2 – Desativar uma opção


Aqui está um exemplo de desabilitação de uma opção em um servidor vinculado.
EXEC sp_serveroption 
    @server = 'Homer', 
    @optname = 'rpc out', 
    @optvalue = 'false';

Então, neste caso eu simplesmente mudei true para false .

Você também pode usar on e off se preferir.

Verifique a configuração


Mais uma vez, podemos verificar nossa configuração de saída de RPC com o código a seguir.
SELECT 
    is_rpc_out_enabled
FROM sys.servers
WHERE name = 'Homer';

Resultado:
+----------------------+
| is_rpc_out_enabled   |
|----------------------|
| 0                    |
+----------------------+

Opções disponíveis


Aqui está uma lista de nomes de opções que você pode configurar com sp_serveroption .
  • collation compatible
  • collation name
  • connect timeout
  • data access
  • dist
  • lazy schema validation
  • pub
  • query timeout
  • rpc
  • rpc out
  • sub
  • system
  • use remote collation
  • remote proc transaction promotion

Eles podem ser definidos como true ou false (ou off e on ). Embora observe que o connect timeout e query timeout opções podem ser definidas como um inteiro não negativo. O collation name opção pode ser um nome de agrupamento ou NULL .

Consulte a documentação da Microsoft para obter uma explicação detalhada dessas opções.