SQLShack (Português)

Este artigo é útil para um iniciante na administração do SQL Server e fornece informações sobre as portas do SQL Server, os métodos para identificar as portas atualmente configuradas.

Introdução

Podemos definir a porta como um ponto final de serviço para fins de comunicação. Ele pode se ligar a um determinado aplicativo ou serviço. Depois de instalar o SQL Server, ele configura as portas padrão para os serviços do SQL Server. Cada aplicativo cliente usa a combinação de endereços IP e número de porta para se conectar ao SQL Server.

Podemos ter dois tipos de portas do SQL Server no SQL Server.

  1. Porta estática : Uma porta estática está sempre vinculada a um serviço ou aplicativo. Não muda devido a um serviço ou reinicialização do sistema. Por padrão, o SQL Server usa o número de porta TCP estático 1433 para a instância padrão MSSQLSERVER. Se você configurar o SQL Server para usar uma porta estática diferente da porta padrão, deverá comunicá-la aos clientes ou proprietários de aplicativos para especificar na string de conexão
  2. Porta dinâmica: Você pode configurar o SQL Server para usar um porta dinâmica. Se você usar a alocação dinâmica de portas, especifique o número da porta zero na configuração da rede. Depois que o SQL Service é reiniciado, ele solicita um número de porta livre do sistema operacional e atribui essa porta ao SQL Server.

    Como você sabe, o aplicativo usa uma combinação de endereço IP e número de porta do SQL Server. Você pode pensar em uma pergunta – como um aplicativo saberá o número da porta para se conectar ao SQL Server?

Depois que o sistema operacional aloca uma porta dinâmica do SQL Server para o SQL Server, ele grava esse número de porta no registro do Windows. O serviço SQL Server Browser usa a porta UDP estática 1434. Ele lê o registro da porta TCP atribuída. A biblioteca de cliente do SQL Server se conecta e envia uma mensagem UDP usando a porta 1434. O serviço SQL Server Browser retorna o número da porta de uma instância específica. Um aplicativo pode se conectar ao SQL Server usando essa porta dinâmica do SQL Server. A instância padrão do SQL Server usa a porta estática; portanto, o SQL Server Browser não retorna a porta para a instância padrão.

Na maioria dos casos, o SQL Server usa a mesma porta dinâmica do SQL Server na reinicialização do SQL Service. Suponha que você parou o SQL Services e o sistema operacional alocou o número da porta dinâmica (anteriormente atribuído ao SQL) para outro serviço, o SQL Server obtém outra porta dinâmica atribuída a ele.

O serviço SQL Browser é essencial para as instâncias nomeadas com alocação de porta dinâmica . Deve estar em execução para o aplicativo consultar e obter os detalhes da porta.

Verifique o número da porta do SQL Server

Nesta seção, verificaremos um método diferente para verificar o número da porta do SQL Server.

Método 1: SQL Server Configuration Manager:

É o método mais comum para encontrar o número da porta do SQL Server.

  • Etapa 1:

    Abra o SQL Server Configuration Manager no menu iniciar. Caso você tenha várias versões do SQL Server, poderá receber uma mensagem de erro ao abrir o SQL Server Configuration Manager:

    Não é possível conectar ao provedor WMI. Você não tem permissão ou o servidor está inacessível

    Para corrigir isso, abra o prompt de comando administrativo e execute o seguinte comando

    1

    > mofcomp “% programfiles (x86 )% \ Microsoft SQL Server \ 150 \ Shared \ sqlmgmproviderxpsp2up.mof “

    Neste comando, altere a versão do SQL Server

    • SQL 2008 – 100
    • SQL 2012 – 110
    • SQL 2014 – 120
    • SQL2016 – 130
    • SQL 2017 – 140
    • SQL 2019 – 150

  • Etapa 2:

    Vá para Configuração de rede, clique na instância SQL para a qual deseja verificar a porta SQL

  • Etapa 3:

    Abre a lista de protocolos. Clique com o botão direito em TCP / IP e propriedades

  • Etapa 4: Clique em Endereços IP e role para baixo até IPAll grupo. Você pode ver as portas TCP SQL dinâmicas e a porta TCP na captura de tela a seguir.

    O valor das portas dinâmicas TCP mostra que estamos usando a configuração das portas dinâmicas. A porta TCP SQL dinâmica atualmente atribuída é 51688.

    Se quisermos usar uma porta estática, remova o valor da porta dinâmica e especifique uma porta estática na porta TCP. Este número de porta deve ser exclusivo e não deve ser usado por outros aplicativos. Você precisa reiniciar o SQL Services para tornar esta mudança efetiva

    • Observação: você deve alterar a configuração da porta do SQL Server usando apenas o SQL Server Configuration Manager.

Método 2: Logs de erro do SQL Server:

O SQL Server registra uma entrada nos logs de erro do SQL Server a cada reinicialização do SQL Serviços. Podemos usar o procedimento armazenado estendido xp_readerrorlog para filtrar o log de erros usando uma palavra-chave específica.

A consulta a seguir usa o procedimento armazenado estendido xp_readerrorlog para verificar pois o servidor está escutando uma palavra-chave.

1
2
3

EXEC xp_ReadErrorLog 0, 1, N “Servidor está escutando”, N “qualquer”, NULL, NULL, “DESC”
GO

Você obtém os detalhes da porta do SQL Server na qual a instância atual do SQL Server está configurada.

  • Observação: se você estiver reciclando logs de erros regularmente, talvez não consiga encontrar a porta do SQL Server usando este método.

Método 3: Obtenha a porta do SQL Server do registro usando xp_instance_regread:

Podemos usar um procedimento armazenado estendido para obter o valor da porta SQL. Execute o código a seguir no SSMS para obter uma porta dinâmica para a instância SQL conectada no momento.

Podemos usar @ Value_name = TcpPort para obter detalhes sobre a porta estática.

Método 4: Obtenha a porta do SQL Server usando sys.dm_exec_connections DMV:

Podemos usar sys.dm_exec_connections DMV para verificar a porta TCP da instância do SQL Server conectada. Usamos a variável @@ SPID para retornar a sessão atual SP ID.

1
2
3
4

SELECIONE porta_tcp_local
DE sys. dm_exec_connections
WHERE session_id = @@ SPID;
GO

Método 5: Obtenha a Porta do SQL Server usando o Visualizador de Eventos do Windows:

Podemos usar o Visualizador de Eventos do Windows também para verificar o SQL Detalhes da porta do servidor. Depois de reiniciar o SQL Services, o Windows Event Viewer também obtém uma entrada para a porta SQL. O Visualizador de Eventos do Windows pode ter um grande número de eventos. É melhor filtrar os logs de eventos para identificação de evento 26022.

Vá para Executar e digite eventvwr. Ele abre o console do visualizador de eventos do Windows. Clique em – Filtrar registro atual.

Especifique o ID do evento 26022 e clique em OK

O visualizador de eventos mostra eventos para todos os SQL Servers instalados nos servidores. Você pode procurar uma instância específica e verificar o número da porta.

Você também pode selecionar uma instância SQL específica na lista suspensa de Fontes de eventos.

Na captura de tela a seguir, podemos ver uma entrada da Porta do SQL Server no visualizador de eventos do Windows.

Conclusão

Neste artigo, exploramos e identificamos métodos para verificar as portas do SQL Server e alterar a configuração da porta estática e dinâmica. Se você tiver comentários ou perguntas, fique à vontade para deixá-los nos comentários abaixo.

  • Autor
  • Postagens recentes
Como um MCSA certificado e Microsoft Certified Trainer em Gurgaon, Índia, com 13 anos de experiência, Rajendra trabalha para uma variedade de grandes empresas com foco em otimização de desempenho, monitoramento, alta disponibilidade e estratégias e implementação de recuperação de desastres. Ele é autor de centenas de artigos oficiais sobre SQL Server, Azure, MySQL, Linux, Power BI, Ajuste de desempenho, AWS / Amazon RDS, Git e tecnologias relacionadas que foram visualizadas por mais de 10 milhões de leitores até o momento.
Ele é o criador de uma das maiores coleções online gratuitas de artigos sobre um único tópico, com sua série de 50 partes sobre Grupos de Disponibilidade AlwaysOn do SQL Server. Com base em sua contribuição para a comunidade do SQL Server, ele foi reconhecido com vários prêmios, incluindo o prestigioso “Melhor autor do ano” continuamente em 2020 e 2021 na SQLShack.
Raj está sempre interessado em novos desafios, então se você precisar de consultoria ajuda em qualquer assunto abordado em seus escritos, ele pode ser contatado em [email protected]
Ver todas as postagens de Rajendra Gupta

Postagens mais recentes de Rajendra Gupta (ver todos)
  • Tempos limite de sessão em grupos de disponibilidade Always On do SQL Server – 8 de fevereiro de 2021
  • Realizando atualizações de versões principais e secundárias para AWS RDS SQL Server – 29 de janeiro de 2021
  • Implantando instâncias AWS RDS PostgreSQL – 27 de janeiro de 2021

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *