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 / 296136
Accepted
Koughdur
Koughdur
Asked: 2021-07-26 06:38:21 +0800 CST2021-07-26 06:38:21 +0800 CST 2021-07-26 06:38:21 +0800 CST

SQL Server 2019: dois aliases apontam para a mesma instância

  • 772

Temos um servidor SQL Server 2008 que migrei com sucesso para um novo computador com o SQL Server 2019.

O nome do servidor SQL Server 2008 é 123.123.123.123.

Ele tem duas instâncias denominadas: 123.123.123.123 e 123.123.123.123\ABC.

O nome do servidor SQL Server 2019 é CMP123456.

As instâncias são nomeadas: CMP123456 e CMP123456\ABC.

Gostaria de usar aliases no servidor de 2019 porque, infelizmente, alguns programadores codificaram os nomes das instâncias em seu código.

Criei dois apelidos:

[123.123.123.123      TCP    1433    localhost]    
[123.123.123.123\ABC  TCP    1433    localhost\ABC]

Quando uso o SSMS para fazer login, no entanto, ambos os aliases me conectam ao CMP123456. Não consigo criar um alias que me conecte a CMP123456\ABC.

Estes são os aliases que eu tentei.

Todos eles falham como erros "servidor não encontrado":

[123.123.123.123\ABC  TCP    1434   localhost\ABC]   
[123.123.123.123\ABC  TCP    1433   CMP123456\ABC]    
[123.123.123.123\ABC  TCP    1433   ABC]

[(Sem Alias) Nesse caso, eu esperava que o único alias localhost funcionasse para ambas as instâncias.]

Alguma ideia? Não permitir dois aliases é um bug/recurso do SQL Server 2019?

sql-server sql-server-2019
  • 2 2 respostas
  • 204 Views

2 respostas

  • Voted
  1. Best Answer
    Tibor Karaszi
    2021-07-26T09:34:32+08:002021-07-26T09:34:32+08:00

    Para os dois primeiros aliases, você aponta ambos para 1433, que é a instância padrão. Isso explica por que ambos vão para a instância padrão (o número da porta tem precedência sobre o nome da \instance).

    Em sua configuração de alias, especifique uma barra invertida com o nome da instância ou especifique o nome da porta para o alias que deve apontar para a instância nomeada.

    Além disso, lembre-se de que o SSMS é um aplicativo de 32 bits, portanto, o SSMS verifica as configurações de alias de 32 bits (não as configurações de 64 bits).

    Alias ​​é uma configuração de cliente, então você terá que fazer isso em todas as suas máquinas clientes (que precisam desses aliases). A informação está no registro, então você pode enviar essas entradas de registro por alguns meios automatizados. Observe que você provavelmente deseja enviar as entradas de registro de 32 e 64 bits (para que os aliases existam para os dois tipos de aplicativos). As entradas de registro de 32 e 64 bits estão em locais diferentes no registro.

    O DNS não o ajudará aqui, pois uma entrada DNS não pode ter um nome \Instance. É por isso que algumas pessoas têm cada instância com um endereço IP separado e, em seguida, têm todas as instâncias listadas na porta 1433 (em seu IP), para facilitar o "reencaminhamento" através da configuração do DNS. Isso não o ajudará aqui, pois você já tem clientes incluindo o nome da instância na string de conexão.

    • 2
  2. nbk
    2021-07-26T08:19:36+08:002021-07-26T08:19:36+08:00

    Existe uma convenção de nomenclatura

    no seu caso

    NetBIOS computer names can't contain the following characters:    
        backslash (\)    
        slash mark (/)    
        colon (:)   
        asterisk (*)    
        question mark (?)    
        quotation mark (")    
        less than sign (<)    
        greater than sign (>)    
        vertical bar (|)
    

    ver mais

    https://learn.microsoft.com/en-us/troubleshoot/windows-server/identity/naming-conventions-for-computer-domain-site-ou

    Também não nomeie um computador localhost, é realmente muito ruim, pois você não segue a convenção

    O nome localhost é reservado para fins de loopback pela RFC 6761 (Special-Use Domain Names),[4] que alcançou o nível de maturidade do Padrão Proposto em fevereiro de 2013. O padrão estabelece uma série de considerações especiais que regem o uso do nome no Sistema de nomes de domínio

    veja wikipédia

    em resumo, o localhost é ruim e o segundo nome é contra a nomeação e não funcionará

    • 0

relate perguntas

  • SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado

  • Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?

  • Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?

  • Quais são as principais causas de deadlocks e podem ser evitadas?

  • Como determinar se um Índice é necessário ou necessário

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