Compartilhar via


Serviço SQL Server Browser (Mecanismo de Banco de Dados e SSAS)

Aplica-se a:SQL Server para Windows

O SQL Server Browser (sqlbrowser) é executado como um serviço, para ajudar os computadores cliente a encontrar instâncias do SQL Server em um servidor que executa o Windows. SQL Server O Browser é instalado com o SQL Server. O serviço SQL Server Browser não precisa ser configurado, mas deve estar em execução em alguns cenários de conexão.

O SQL Server Browser pode ajudar com:

  • Navegando por uma lista de servidores disponíveis. Para cada instância do Mecanismo de Banco de Dados e do SSAS (SQL Server Analysis Services ), o serviço SQL Server Browser fornece o nome da instância e o número da versão.

  • Conectando-se à instância correta do servidor.

  • Conectando-se a pontos de extremidade da DAC ( conexão de administrador dedicado ).

Configurar o serviço SQL Server Browser

O SQL Server Browser pode ser configurado durante a instalação ou usando o SQL Server Configuration Manager. Por padrão, o serviço Navegador do SQL Server é iniciado automaticamente:

  • Quando uma instalação é atualizada.
  • Quando um cluster é instalado.
  • Ao instalar uma instância nomeada do Mecanismo de Banco de Dados, incluindo todas as instâncias do SQL Server Express.
  • Ao instalar uma instância nomeada do SSAS.

Como funciona o SQL Server Browser

As seções a seguir descrevem como o serviço SQL Server Browser funciona.

Atribuição de porta TCP/IP ou canal nomeado

Quando uma instância do SQL Server é iniciada e o protocolo TCP/IP está habilitado para o SQL Server, a instância recebe uma porta TCP/IP. O SQL Server escutará em um pipe nomeado específico se o protocolo pipes nomeado estiver habilitado. Essa porta ou pipe nomeado são usados por essa instância específica para trocar dados com aplicativos cliente. A porta 1433 TCP/IP e o pipe \sql\query são atribuídos à instância padrão durante a instalação. O administrador do servidor pode alterar a porta ou o pipe nomeado usando o SQL Server Configuration Manager.

Instâncias nomeadas e portas dinâmicas

Como apenas uma instância do SQL Server pode usar uma porta ou pipe, diferentes números de porta e nomes de pipe são atribuídos para instâncias nomeadas, incluindo a edição do SQL Server Express. Quando habilitados, as instâncias nomeadas e o SQL Server Express são configurados para usar portas dinâmicas por padrão. Ou seja, uma porta disponível é atribuída quando o SQL Server é iniciado.

Se você desejar, pode-se atribuir uma porta específica a uma instância do SQL Server. Os clientes podem especificar uma porta específica ao se conectar ao SQL Server. No entanto, se a porta for atribuída dinamicamente, o número da porta poderá ser alterado sempre que a instância do SQL Server for reiniciada, portanto, o número de porta correto será desconhecido para o cliente.

Processo de inicialização e descoberta de porta do SQL Server

Após a inicialização, o SQL Server Browser inicia e declara a porta 1434UDP (User Datagram Protocol). O SQL Server Browser lê o registro, identifica todas as instâncias do SQL Server no computador e observa as portas e os pipes nomeados que eles usam. Quando um servidor tiver dois ou mais cartões de rede, o Navegador do SQL Server retornará para a primeira porta habilitada que encontrar do SQL Server. O SQL Server Browser dá suporte a IPv4 e IPv6.

Quando os clientes do SQL Server solicitam recursos do SQL Server, a biblioteca de rede do cliente envia uma mensagem UDP para o servidor usando a porta 1434. SQL Server O Browser responde com a porta TCP/IP ou o pipe nomeado da instância solicitada. Em seguida, a biblioteca de rede no aplicativo cliente completa a conexão, enviando uma solicitação ao servidor utilizando a porta ou o pipe nomeado da instância desejada.

Para obter mais informações sobre como iniciar e parar o serviço SQL Server Browser, consulte Iniciar, parar, pausar, retomar e reiniciar os serviços do SQL Server.

Usar o NAVEGADOR do SQL Server

Mesmo que o serviço SQL Server Browser não esteja em execução, é possível se conectar ao SQL Server desde que você forneça o número da porta correto ou o nome do pipe apropriado. Por exemplo, você pode se conectar à instância padrão do SQL Server com TCP/IP se ele estiver em execução na porta 1433.

No entanto, se o serviço SQL Server Browser não estiver em execução, as seguintes conexões não funcionarão:

  • Qualquer componente que tente conectar-se a uma instância nomeada sem especificar completamente todos os parâmetros (como a porta do TCP/IP ou o pipe nomeado).

  • Qualquer componente que gere ou passe <server>\<instance> informações que outros componentes possam usar posteriormente para se reconectar.

  • Conectando-se a uma instância nomeada sem fornecer o número da porta ou pipe.

  • Conexão de diagnóstico para administradores de banco de dados para uma instância nomeada ou a instância padrão se não estiver usando a porta 1433TCP/IP.

  • O serviço de redirecionamento OLAP (Processamento Analítico Online).

  • Enumerando servidores no SQL Server Management Studio.

Suponha que você esteja usando o SQL Server em um cenário cliente-servidor (por exemplo, quando seu aplicativo está acessando o SQL Server em uma rede). Se você parar ou desabilitar o serviço SQL Server Browser, deverá atribuir um número de porta específico a cada instância e configurar o código do aplicativo cliente para usar esse número de porta. Esta abordagem tem os seguintes problemas:

  • Você deve atualizar e manter o código do aplicativo cliente para garantir que ele esteja se conectando à porta adequada.

  • A porta escolhida para cada instância pode ser usada por outro serviço ou aplicativo no servidor, fazendo com que a instância do SQL Server não esteja disponível.

Clusters e SQL Server Browser

O SQL Server Browser não é um recurso de cluster e não dá suporte ao failover entre nós de cluster. Portanto, se houver um cluster, o SQL Server Browser deverá ser instalado e ativado para cada nó de cluster. Em clusters, o Navegador do SQL Server escuta IP_ANY.

Observação

Quando o Navegador do SQL Server escuta em IP_ANY e você habilita a escuta em endereços IP específicos, deve configurar a mesma porta TCP/IP em cada endereço IP, pois o SQL Server Browser retorna o primeiro par de endereço IP e porta que encontra.

Instalar, desinstalar e executar na linha de comando

Por padrão, o programa SQL Server Browser é instalado em <drive>:\Program Files (x86)\Microsoft SQL Server\<nn>\Shared\sqlbrowser.exe.

O serviço Navegador do SQL Server será desinstalado quando a última instância do SQL Server for removida.

O SQL Server Browser pode ser iniciado no prompt de comando para solução de problemas usando a opção -c :

<drive>\<path>\sqlbrowser.exe -c

Segurança

O Serviço de Navegador do SQL Server é crucial para facilitar a comunicação de rede com instâncias do SQL Server.

As medidas de segurança para o Serviço de Navegador do SQL Server incluem:

  • Configurando firewalls para permitir seu tráfego.

  • Restringindo o acesso a endereços IP confiáveis.

  • Aplicando regularmente atualizações para corrigir vulnerabilidades.

  • Além disso, você deve implementar políticas de autenticação e autorização fortes para impedir o acesso não autorizado e manter a integridade do ambiente do SQL Server.

Privilégios de conta

O SQL Server Browser escuta em uma porta UDP e aceita solicitações não autenticadas usando o Protocolo de Resolução do SQL Server (SSRP). O SQL Server Browser deve ser executado no contexto de segurança de um usuário de baixo privilégio para minimizar a exposição a um ataque mal-intencionado. A conta de entrada pode ser alterada usando o SQL Server Configuration Manager.

Os direitos mínimos de usuário do SQL Server Browser são:

  • Negue o acesso a este computador por meio da rede.
  • Proibir login localmente.
  • Negar a entrada como um trabalho em lotes.
  • Negar autenticação através dos Serviços de Terminal.
  • Faça login como um serviço.
  • Leia e escreva as chaves do Registro do SQL Server relacionadas à comunicação de rede (portas e pipes).

Conta padrão

O programa de instalação configura o Navegador do SQL Server para usar durante a instalação, a conta selecionada para serviços. Outras contas possíveis incluem:

  • Qualquer domínio\conta local .
  • A conta Serviço Local
  • A conta sistema local (não recomendada, pois tem privilégios desnecessários).

Ocultar SQL Server

As instâncias ocultas são instâncias do SQL Server que dão suporte apenas a conexões de memória compartilhada. Para o SQL Server, defina o HideInstance sinalizador para indicar que o SQL Server Browser não deve responder com informações sobre essa instância do servidor.

Usar um firewall

Para se comunicar com o serviço SQL Server Browser em um servidor por trás de um firewall, abra a porta 1434 UDP e a porta TCP/IP usada pelo SQL Server (por exemplo, 1433). Para obter informações sobre como trabalhar com um firewall, consulte Configurar o Firewall do Windows para permitir o acesso ao SQL Server.