AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / 问题

Perguntas[linked-server](dba)

Martin Hope
xhr489
Asked: 2022-10-13 04:50:18 +0800 CST

Tabela ETL de um SQL Server para outro SQL Server

  • 1

Eu gostaria de ETL uma tabela de uma instância do SQL Server para outra instância do SQL Server. Não quero criar um pacote SSIS. eu tentei

  1. para extrair os dados usando uma Tabela Externa no destino (ou seja, eu uso a Tabela Externa para criar uma cópia local, por exemplo, com SELECT INTO #Hello FROM MyExternalTable).
  2. Servidor vinculado com o uso SELECT * INTO #HELLO FROM MyLinkedServer.MyDB.dbo.MyTable
  3. Eu também tenho usado OPENROWSET.

Todos eles são executados em thread único, o que posso ver nos planos de execução. Eu não usei bcp, mas parece que primeiro preciso salvar a tabela em um arquivo e depois lê-la do arquivo e carregá-la. Portanto, não acho que seja a ferramenta correta para essa tarefa. Qual é a abordagem mais rápida para copiar uma tabela de uma instância do SQL Server para outra instância do SQL Server?

sql-server linked-server
  • 1 respostas
  • 52 Views
Martin Hope
sada
Asked: 2022-06-30 23:14:03 +0800 CST

Falha no login ao criar o servidor vinculado

  • 0

Eu quero criar um servidor vinculado no servidor de banco de dados B para o servidor de banco de dados A em um servidor de desenvolvimento onde apenas o SQL Management Studio está instalado. Todos os três servidores estão no mesmo domínio. A mensagem de erro

Falha no login do usuário 'NT AUTHORITY\ANONYMOUS LOGON'. (Microsoft SQL Server, Erro: 18456)

quando eu quero criar o servidor vinculado.

Não entendo porque porque consegui criar o servidor vinculado em outro servidor onde é verdade que um servidor SQL está instalado, mas acho que não teve nada a ver com isso.

Tentei cuidar desse problema, mas não consegui resolver.

ATUALIZAR

https://www.sqlservercentral.com/blogs/how-to-resolve-user-error-in-kerberos-configuration-manager

sql-server linked-server
  • 1 respostas
  • 132 Views
Martin Hope
msuzuki
Asked: 2022-01-08 15:33:10 +0800 CST

Como criar um servidor vinculado ao SQL Server com usuário de autenticação local do SQL Server para uma autenticação remota do Windows

  • 1

Eu preciso criar um Servidor Vinculado do Servidor A que usa uma Autenticação do SQL Server para um Servidor B que usa uma Autenticação do Windows.

A "representação" é possível?

Se "SIM" quais opções, configuração devo escolher?

insira a descrição da imagem aqui

sql-server linked-server
  • 1 respostas
  • 108 Views
Martin Hope
Leonardo
Asked: 2021-11-05 10:50:55 +0800 CST

Mesclar 2 instâncias do SQL Server?

  • 0

Eu tenho 2 instâncias do SQL Server em um único servidor, inst1 e inst2. Essas são instâncias fortemente acopladas, com inst1 sendo vinculada a inst2 e vice-versa.

Como eles já estão rodando no mesmo servidor, gostaria de mesclá-los e cortar essa bagunça do servidor vinculado. Minha pergunta é: é possível mesclá-los enquanto "mantendo" as consultas inalteradas no dia 0?

EG: select * from table1 join linkedServer.database2.dbo.table2ainda funcionaria

sql-server linked-server
  • 1 respostas
  • 57 Views
Martin Hope
variable
Asked: 2021-10-22 03:23:45 +0800 CST

O valor de login local do servidor vinculado suporta um login sql baseado em grupo do Windows AD?

  • -2

Link: https://learn.microsoft.com/en-us/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine?view=sql-server-ver15#to- criar-um-servidor-vinculado-para-outra-instância-de-sql-server-usando-sql-server-management-studio

Eu tenho um grupo do windows configurado como login sql.

Ao configurar o servidor vinculado, no login local, posso ver o login sql do grupo do Windows listado no menu suspenso.

O link acima não menciona nada sobre o grupo windows. O login local do servidor vinculado suporta o grupo do Windows (com/sem representação)? Se não, por que essa opção aparece no grupo de janelas no menu suspenso?

Este link diz que não é possível, mas é muito antigo: https://www.sqlservercentral.com/forums/topic/linked-server-and-windows-group-local-login

Estou procurando documentação mencionando sobre isso.

insira a descrição da imagem aqui

sql-server linked-server
  • 1 respostas
  • 241 Views
Martin Hope
JF Landry
Asked: 2021-04-29 05:58:47 +0800 CST

Adicionando grupo de segurança do AD a um servidor vinculado ao SQL

  • 2

Eu tenho uma pergunta sobre como adicionar permissões para um grupo de usuários em um servidor vinculado no SQL Server. Não sou especialista em segurança, por isso apelo a todos.

Aqui está o topo:

Tenho um software privado que chamarei de X instalado em um servidor virtual Hyper-V. Os usuários deste software se conectam por meio de máquinas virtuais usando a área de trabalho remota.

O aplicativo tem sua própria instância de banco de dados SQL Server. A segurança para este banco de dados é Windows Authenticated. Todos os usuários do Aplicativo X pertencem a um grupo de usuários no Windows Server 2019 Active Directory (AD).

Por outro lado, tenho um aplicativo Y (Microsoft Dynamic 365) instalado localmente em cada estação de trabalho e que possui sua própria instância SQL. O aplicativo usa um banco de dados SQL que eu também chamaria de Y.

Como gostaria de compartilhar informações entre as 2 instâncias SQL, criei um servidor vinculado na instância X à instância Y. Consegui com alguma consulta SQL para inserir, atualizar e excluir algumas informações em um banco de dados da instância Y da minha instância X. Para fazer isso, concedi a mim mesmo direitos de DB_owner no banco de dados de X.

Cheguei ao estágio de permitir que o grupo de usuários X possa executar a partir do aplicativo X usando as mesmas consultas que interagem no SQL Server Y.

No entanto, percebo que preciso criar cada usuário de X na instância SQL do aplicativo Y a partir do menu Segurança, Conexão. Minhas solicitações funcionam quando eu concedo funções DB_Owner. Eu teria pensado que poderia ter usado o mesmo grupo usado no AD para meu aplicativo X. Eu tentei bem, mas não funciona.

Não sei se isso se deve à configuração do meu servidor vinculado.

Segue a configuração que estou usando:

insira a descrição da imagem aqui

insira a descrição da imagem aqui

Alguém poderia me indicar uma solução para evitar ter que recriar todos os usuários do meu AD de X na minha instância Y e apenas vincular meu grupo X.

linked-server sql-server-2014
  • 1 respostas
  • 683 Views
Martin Hope
Mahesh Giri
Asked: 2021-04-01 23:03:14 +0800 CST

Provedores na configuração do servidor vinculado do SQL Server

  • 0

Como 'permitir no processo' funciona para provedores na configuração do servidor vinculado ao servidor SQL? Parece que está desmarcado por padrão. Qual é o requisito para manter esta opção marcada e quais são os prós e contras de usá-la.

sql-server linked-server
  • 1 respostas
  • 492 Views
Martin Hope
Vladimir Baranov
Asked: 2021-03-18 19:31:17 +0800 CST

Alguns usuários não conseguem consultar o servidor vinculado com "Falha no login para o usuário NT AUTHORITY\ANONYMOUS LOGON"

  • 1

Quando tento executar uma consulta simples envolvendo um servidor vinculado, ela falha:

SELECT * FROM [server2].[DWH].[dbo].[SomeTable]

Msg 18456, Level 14, State 1, Line 1
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.

Mas, há outro usuário que pode executar essa consulta sem problemas.


Nossa empresa não possui um SQL Server DBA e herdamos alguns SQL Servers de outra empresa após a aquisição.

Sou um desenvolvedor tentando executar algumas consultas e estou com dificuldades para descobrir como configurar o acesso corretamente. Eu realmente não sei onde procurar, então tentarei explicar a configuração atual da melhor maneira possível.

Existe o Servidor1:

Microsoft SQL Server 2012 (SP4) (KB4018073) - 11.0.7001.0 (X64) 
    Aug 15 2017 10:23:29 
    Copyright (c) Microsoft Corporation
    Standard Edition (64-bit) on Windows NT 6.3 <X64> (Build 9600: ) (Hypervisor)

Existe o Servidor2:

Microsoft SQL Server 2016 (SP1-CU15-GDR) (KB4505221) - 13.0.4604.0 (X64) 
    Jun 15 2019 07:56:34 
    Copyright (c) Microsoft Corporation
    Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2016 Datacenter 10.0 <X64> (Build 14393: ) (Hypervisor)

Nossa empresa tem um domínio MAIN_DOMAINe eu entro no meu laptop Windows como MAIN_DOMAIN\my.name. Quando executo o SSMS no meu laptop, posso me conectar a ambos Server1e Server2usando a autenticação do Windows.

Pelo que entendi, meu login nos dois SQL Servers tem praticamente todas as permissões:

Servidor1:

CREATE LOGIN [MAIN_DOMAIN\my.name] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
ALTER SERVER ROLE [sysadmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [serveradmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [setupadmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [processadmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [diskadmin] ADD MEMBER [MAIN_DOMAIN\my.name]

Servidor2:

CREATE LOGIN [MAIN_DOMAIN\my.name] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
ALTER SERVER ROLE [sysadmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [serveradmin] ADD MEMBER [MAIN_DOMAIN\my.name]
ALTER SERVER ROLE [setupadmin] ADD MEMBER [MAIN_DOMAIN\my.name]

O próprio Server1 e Server2 não estão em MAIN_DOMAIN, eles estão emother_domain.com

Eu posso Remote Desktop para ambos usando other_domain\my.nameum usuário com uma senha diferente do meu usuário de domínio principal.

É assim que o servidor vinculado é configurado em Server1:

EXEC master.dbo.sp_addlinkedserver @server = N'server2', @srvproduct=N'SQL Server'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'server2',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL

EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'collation compatible', @optvalue=N'false'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'data access', @optvalue=N'true'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'dist', @optvalue=N'false'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'pub', @optvalue=N'false'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'rpc', @optvalue=N'true'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'rpc out', @optvalue=N'true'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'sub', @optvalue=N'false'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'connect timeout', @optvalue=N'0'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'collation name', @optvalue=null
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'lazy schema validation', @optvalue=N'false'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'query timeout', @optvalue=N'0'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'use remote collation', @optvalue=N'true'
EXEC master.dbo.sp_serveroption @server=N'server2', @optname=N'remote proc transaction promotion', @optvalue=N'true'

No Server1serviço MSSQLSERVER (sqlservr.exe) é executado no usuário chamado NT Service\MSSQLSERVER.

No Server2serviço MSSQLSERVER (sqlservr.exe) é executado no usuário chamado NT Service\MSSQLSERVER.

usuário do serviço sql server


Aqui está a saída de setspn -l. Eu recebo a mesma saída quando executo server1ou server2:

C:\Windows\system32>setspn -l SERVER2
Registered ServicePrincipalNames for CN=SERVER2,OU=Azure Resources,OU=Corporate,DC=other_domain,DC=com,DC=au:
        MSSQLSvc/SERVER2.other_domain.com.au:1433
        MSSQLSvc/SERVER2.other_domain.com.au
        WSMAN/SERVER2
        WSMAN/SERVER2.other_domain.com.au
        TERMSRV/SERVER2
        TERMSRV/SERVER2.other_domain.com.au
        RestrictedKrbHost/SERVER2
        HOST/SERVER2
        RestrictedKrbHost/SERVER2.other_domain.com.au
        HOST/SERVER2.other_domain.com.au

C:\Windows\system32>setspn -l SERVER1
Registered ServicePrincipalNames for CN=SERVER1,OU=Azure Resources,OU=Corporate,DC=other_domain,DC=com,DC=au:
        MSSQLSvc/SERVER1.other_domain.com.au:1433
        MSSQLSvc/SERVER1.other_domain.com.au
        Microsoft Virtual Console Service/SERVER1.other_domain.com.au
        Microsoft Virtual Console Service/SERVER1
        Microsoft Virtual System Migration Service/SERVER1.other_domain.com.au
        Microsoft Virtual System Migration Service/SERVER1
        Hyper-V Replica Service/SERVER1.other_domain.com.au
        Hyper-V Replica Service/SERVER1
        WSMAN/SERVER1
        WSMAN/SERVER1.other_domain.com.au
        TERMSRV/SERVER1.other_domain.com.au
        TERMSRV/SERVER1
        RestrictedKrbHost/SERVER1
        HOST/SERVER1
        RestrictedKrbHost/SERVER1.other_domain.com.au
        HOST/SERVER1.other_domain.com.au

Infelizmente não entendo o que significa. A única coisa que eu entendo aqui é que MAIN_DOMAINnão é mencionado em nenhum lugar.


Um usuário diferente pode executar a consulta envolvendo o servidor vinculado sem problemas.

Ele faz login Server1usando a Área de Trabalho Remota e usando other_domain\his.name. Ele executa o SSMS nele Server1e se conecta ao SQL Server usando a autenticação do Windows.

Seu login Server1também tem todas as permissões:

CREATE LOGIN [other_domain\his.name] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
ALTER SERVER ROLE [sysadmin] ADD MEMBER [other_domain\his.name]
ALTER SERVER ROLE [serveradmin] ADD MEMBER [other_domain\his.name]

O que preciso configurar para poder executar uma consulta envolvendo o servidor vinculado enquanto estou conectado ao SQL Server do meu laptop usando MAIN_DOMAIN\my.name?

sql-server linked-server
  • 1 respostas
  • 1739 Views
Martin Hope
Metaphor
Asked: 2020-10-03 03:18:45 +0800 CST

Mapeamento de logins para servidores vinculados para migração

  • 1

Minha equipe está migrando um servidor SQL 2012 com uma extensa lista de servidores vinculados para o SQL 2016. Minha tarefa é criar scripts de criação de servidores vinculados no novo servidor.

Parece que tenho todas as informações necessárias para criar o script em sys.servers, mas estou tendo problemas para encontrar onde os logons locais são mapeados para os servidores vinculados.

sql-server linked-server
  • 1 respostas
  • 170 Views
Martin Hope
freefaller
Asked: 2020-09-03 00:51:35 +0800 CST

Criando objeto de servidor vinculado à mesma instância

  • 0

Estou tentando criar um Linked Server Object de volta para a mesma instância do servidor SQL Express 2014 (veja abaixo o contexto), mas estou encontrando o seguinte erro...

Não é possível inicializar o objeto de fonte de dados do provedor OLE DB "SQLNCLI11" para o servidor vinculado "NewServer".

O provedor OLE DB "SQLNCLI11" para o servidor vinculado "NewServer" retornou a mensagem "Atributo de cadeia de conexão inválido". (Microsoft SQL Server, Erro: 7303)

Usei a seguinte configuração...

  • Servidor vinculado:NewServer
  • Tipo de servidor:Other data source
  • Fornecedor:Microsoft OLE DB Provider for SQL Server
  • Nome do Produto:{empty}
  • Fonte de dados: LOCALHOST\SQLEXPRESS(também tentei o nome real do servidor)
  • Sequência do provedor:SQLNCLI
  • Segurança, Login: Using the login's current security context(também tentei using this security contexte fornece sa/password)

Por que estou recebendo esse erro e como corrigi-lo?

É porque estou tentando criar um objeto de servidor vinculado de volta a si mesmo?


Por contexto, o motivo pelo qual estou fazendo isso é devido a um cliente cujos ambientes UAT e Produção têm um servidor vinculado com o qual precisamos interagir.

Como resultado, preciso criar procedimentos armazenados em minha máquina de desenvolvimento local que usem o [NewServer].[Database].[dbo].[Table]nome... para que o sproc possa ser armazenado no repositório e facilmente implantado por meio de ferramentas de comparação. Mas não me permite criar/atualizar os sprocs sem a fonte de dados válida.

Achei que a solução simples seria criar o [Database].[dbo].[Table]na minha instância local do SQL Express 2014 e adicionar um servidor vinculado de volta a si mesmo usando o [NewServer]nome.

A única opção é criar uma nova instância SQL?

linked-server sql-server-2014
  • 1 respostas
  • 382 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve