Linked server lendo todos BDs instancia remota

SQL Server

SQL

Banco de Dados

24/04/2017

Bom dia a todos,

Tenho uma instancia, onde guardo uma tabela de monitoramento.

Precisava, rodar um select en todos bancos de dados de um linked server e fazer um insert na minha base local - onde criei o linked server.
Sera que teria como fazer isso?

Muito obrigado,
Bruno
Bruno Cunha

Bruno Cunha

Curtidas 0

Melhor post

Fabiano Carvalho

Fabiano Carvalho

24/04/2017

Tente algo assim

insert into base.dbo.tabela
[SEU_LINK_AQUI].master.dbo.sp_msforeachdb '
use [?]
seu codígo aqui '
GOSTEI 1

Mais Respostas

Lincon Silva

Lincon Silva

24/04/2017

Bruno, boa tarde.

tem sim como fazer, você só precisa dar permissão ao teu user da instancia do teu linked Server para dar esse tipo de select, sem contar que ele precisa buscar todas as bases na Master e pra isso também tem que ter permissão.

Não recomendo muito dar essa acessibilidade para algum user externo, mas vai da necessidade e da segurança aplicada de cada um.

Qual o tipo de informação você precisa de cada base?

Por exemplo, com esse select você recupera as bases e Ids dos objetos, podendo assim fazer várias coisas.

SELECT name,database_id FROM [servidor_com_linked_server].MASTER.SYS.DATABASES


Estou levando em consideração que você já tenha um linked Server configurado e rodando
GOSTEI 1
Bruno Cunha

Bruno Cunha

24/04/2017

Opa ... Valeu Fabiano. Era isso mesmo que estava precisando.

Muito obrigado,
Bruno Cunha
GOSTEI 0
João Françozo

João Françozo

24/04/2017

Bruno,

Toma cuidado com a transação aberta, pode deixar seus log presos e também grandes problemas de performance.
GOSTEI 0
POSTAR