/Banco de dados

voltar
/Banco de dados

Fundamentos de dados distribuídos – Parte 02

PorÁlvaro Gulliver em

Foco na configuração de Linked Server

Olá amigos. Dou continuidade ao estudo
sobre dados distribuídos, que explica os conceitos básicos
desta excelente ferramenta do SQL Server. Neste artigo nosso
foco será a configuração de Linked Servers.

No artigo anterior vimos que existem várias
formas de fazer uma conexão entre dois servidores de banco
de dados, sejam eles da mesma plataforma ou não. Quando
o acesso aos servidores são freqüentes, na maioria
das vezes é melhor criar um vínculo permanente
entre ambos. São inúmeras as vantagens. Um benefício
evidente é ter que preparar incontáveis usuários
para quem possam conectar-se à base OLE-DB. Neste caso
o trabalho não fica visível, pois os usuários
conectam-se ao SQL Server que já está conectado
ao destino escolhido.

Existem duas formas de criar um Linked server:
você poderá fazer pelo Enterprise Mananger ou utilizando
uma stored-procedure embutida chamada sp_addlinkedserver.

Vejamos abaixo a sintaxe utilizada na stored-procedure:

sp_addlinkedserver [ @server ] =  ‘nome’
[ , [ @srvproduct = ] ‘descrição’ ]
[ , [ @provider = ] ‘nome do provedor’ ]
[ , [ @datasrc = ] ‘fonte’ ]
[ , [ @location  = ] ‘localização da Base segundo o provedor’ ]
[ , [ @provstr = ] ‘complemento do provedor’ ]
[ , [ @catalog = ] ‘banco de dados destino’ ]

Vamos explicar cada parâmetro:

server

Nome que identifica o linked server.

srvproduct

Simples descrição.

provider

Nome atribuído que identifica o provedor de dados (Veja no artigo anterior a tabela com a relação de provedores).

datasrc

Onde os dados consultados estão alocados. Escolha um nome de acordo para o provedor.

location

Identifica as localizações de cada provedor e que fazem sentido ao provedor.

provstr

É opcional. É uma característica distinta para cada provedor. Utilizada para acessos a bases ODBC.

catalog

Banco de dados padrão (default).




Veja um exemplo prático:

sp_addlinkserver
   @server = SRV_EXEMPLO,
   @srvproduct = ‘Acesso à instancia SRV_EXEMPLO’,
   @provider = ‘SQLOLEDB’,
   @srvproduct = ‘alvaro\SRV_EXEMPLO’,
   @catalog = ‘Northwind’

Quando mencionamos a possibilidade de acessos entre dois servidores, é possível aplicar os mesmos argumentos para instâncias, como mostra o exemplo.

Agora depois de executado com sucesso, vamos comprovar a criação, veja abaixo:

exec sp_linkedservers

Vamos agora criar um linked server pelo Enterprise Manager, como mostra a figura 01, abaixo:


Figura 01.

Após abrir o Enterprise Manager, clique na pasta Security, com mostra a figura 02.


Figura 02.

Preencha os dados abaixo com as mesma informações feitas diretamente pelo script do exemplo prático acima. Note que os campos da Figura 03 são justamente os parâmetros passados na stored-procedure sp_addlinkedserver:


Figura 03.

No próximo artigo falaremos sobre consultas e alterações remotas entre servidores.

Um abraço a todos!

De 0 a 10, o quanto você recomendaria este artigo para um amigo?

 

Deixe um comentário! 2

2 comentários

Comentários

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Comentando como Anônimo

  1. Onde trabalho, por exemplo, temos um linked server num SQLServer lendo dados de uma base Oracle. É o tipo de coisa que tira muita linha de programação das aplicações

leia mais
Este projeto é mantido e patrocinado pelas empresas: