Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se:SQL Server
Em um grupo de disponibilidade Always On, você pode configurar uma ou mais réplicas de disponibilidade para permitir conexões somente de leitura quando estiverem em execução na função secundária (ou seja, em execução como réplica secundária). Você também pode configurar cada réplica de disponibilidade para permitir ou bloquear conexões somente de leitura quando estiver em execução na função primária (ou seja, em execução como réplica primária).
Para facilitar o acesso de clientes aos bancos de dados primário ou secundário de um determinado grupo de disponibilidade, você deve definir um ouvinte de grupo de disponibilidade. Por padrão, o listener do grupo de disponibilidade direciona as conexões recebidas para a réplica primária. No entanto, você pode configurar um grupo de disponibilidade para dar suporte ao roteamento somente leitura, o que permite que o ouvinte do grupo de disponibilidade redirecione as solicitações de conexão de aplicativos com intenção de leitura para uma réplica secundária legível. Para obter mais informações, consulte Configurar o roteamento de somente leitura para um grupo de disponibilidade (SQL Server).
Durante um failover, uma réplica secundária assume a função primária, e a antiga réplica primária assume a função secundária. Durante o processo de failover, todas as conexões de clientes com a réplica primária e as réplicas secundárias são encerradas. Após o failover, quando um cliente se reconecta ao listener do grupo de disponibilidade, o listener reconecta o cliente à nova réplica primária, exceto no caso de uma solicitação de conexão com intenção de leitura. Se o roteamento somente leitura estiver configurado nas instâncias de cliente e de servidor que hospedam a nova réplica primária e pelo menos em uma réplica secundária legível, as solicitações de conexão de tentativa de leitura serão redirecionadas a uma réplica secundária com suporte para o tipo de acesso de conexão exigido pelo cliente. Para garantir uma experiência satisfatória para o cliente após um failover, é importante configurar o acesso às conexões para as funções primária e secundária de cada réplica de disponibilidade.
Observação
Para obter informações sobre o ouvinte do grupo de disponibilidade, que manipula as solicitações de conexão do cliente, confira Ouvintes do grupo de disponibilidade, conectividade de cliente e failover de aplicativo (SQL Server).
Tipos de acesso à conexão suportados pela função secundária
A função secundária dá suporte a três alternativas para conexões de cliente, da seguinte maneira:
Nenhuma conexão
Nenhuma conexão de usuário é permitida. Os bancos de dados secundários não estão disponíveis para acesso de leitura. Esse é o comportamento padrão na função secundária.
Somente conexões para leitura
Os bancos de dados secundários estão disponíveis apenas para a conexão para a qual a propriedade de conexão Application Intent está definida como ReadOnly (conexões de intenção de leitura).
Para obter mais informações sobre essa propriedade de conexão, consulte Suporte do SQL Server Native Client à alta disponibilidade e recuperação de desastre.
Permitir qualquer conexão de somente leitura
Os bancos de dados secundários estão todos disponíveis para conexões de leitura. Essa opção permite a conexão de clientes com versão inferior.
Para obter mais informações, consulte Configurar o acesso somente para leitura em uma réplica de disponibilidade (SQL Server).
Tipos de acesso à conexão suportados pela função primária
A função primária dá suporte a duas alternativas para conexões de cliente, da seguinte maneira:
Todas as conexões são permitidas
As conexões de leitura/gravação e somente leitura são permitidas nos bancos de dados primários. Esse é o comportamento padrão para a função primária.
Permitir apenas conexões de leitura/gravação
Quando a propriedade de conexão Application Intent está definida como ReadWrite ou não está definida, a conexão é permitida. As conexões para as quais a palavra chave da cadeia de conexão Application Intent está definida como ReadOnly não são permitidas. Permitir apenas conexões de leitura/gravação pode ajudar a evitar que seus clientes conectem por engano uma carga de trabalho destinada à leitura à réplica primária.
Para obter mais informações sobre essa propriedade de conexão, consulte Using Connection String Keywords with SQL Server Native Client.
Para obter mais informações, confira Configurar o acesso somente para leitura em uma réplica de disponibilidade (SQL Server).
Como a configuração de acesso de conectividade afeta a conectividade de clientes
As configurações de acesso de conexão de uma réplica determinam se uma tentativa de conexão é reprovada ou tem êxito. A tabela a seguir resume quando uma determinada tentativa de conexão é reprovada ou tem êxito para cada configuração de acesso de conexão.
| Função da Réplica | Acesso de conexão com suporte na réplica | Intenção de conexão | Resultado da tentativa de conexão |
|---|---|---|---|
| Secundário | Tudo | Intenção de leitura, leitura/gravação ou nenhuma intenção de conexão especificada | Êxito |
| Secundário | Nenhum (este é o comportamento padrão da função secundária). | Intenção de leitura, leitura/gravação ou nenhuma intenção de conexão especificada | Falha |
| Secundário | Somente intenção de leitura | Intenção de leitura | Êxito |
| Secundário | Somente intenção de leitura | Intenção de leitura e gravação ou sem intenção de conexão especificada | Falha |
| Primário | Todos (Este é o comportamento primário padrão.) | Intenção de somente leitura, leitura/gravação ou nenhuma intenção de conexão especificada | Êxito |
| Primário | Leitura e gravação | Somente intenção de leitura | Falha |
| Primário | Leitura e gravação | Intenção de leitura e gravação ou sem intenção de conexão especificada | Êxito |
Para obter informações sobre como configurar um grupo de disponibilidade para aceitar conexões de cliente às suas réplicas, confira Ouvintes do grupo de disponibilidade, conectividade de cliente e failover de aplicativo (SQL Server).
Exemplo de configuração de acesso à conexão
Dependendo de como as diferentes réplicas de disponibilidade são configuradas para acesso à conexão, o suporte a conexões de cliente poderá mudar após o failover de um grupo de disponibilidade. Por exemplo, considere um grupo de disponibilidade para o qual o relatório é executado em réplicas secundárias de confirmação assíncrona remotas. Todos os aplicativos somente leitura dos bancos de dados deste grupo de disponibilidade definem sua propriedade de conexão Application Intent como ReadOnly. Portanto, todas as conexões somente leitura são conexões de intenção de leitura.
Este grupo de disponibilidade de exemplo possui duas réplicas de confirmação síncrona no centro de computação principal e duas réplicas de confirmação assíncrona em um local secundário. Para a função primária, todas as réplicas são configuradas para acesso de leitura/gravação, o que impede conexões de intenção de leitura com a réplica primária em todas as situações. A função secundária de confirmação síncrona usa a configuração de acesso de conexão padrão ("nenhuma"), que impede todas as conexões de cliente sob a função secundária. Em contraste, as réplicas de confirmação assíncrona são configuradas para permitir conexões com intenção de leitura na função secundária. A tabela a seguir resume essa configuração de exemplo:
| Réplica | Modo de confirmação | Função inicial | Acesso à conexão para a função secundária | Acesso à conexão para a função primária |
|---|---|---|---|---|
| Replica1 | Síncrona | Primário | Nenhum | Leitura e gravação |
| Replica2 | Síncrona | Secundário | Nenhum | Leitura e gravação |
| Replica3 | Assíncrono | Secundário | Somente intenção de leitura | Leitura e gravação |
| Replica4 | Assíncrono | Secundário | Somente intenção de leitura | Leitura e gravação |
Normalmente, neste cenário de exemplo, os failovers ocorrem apenas entre as réplicas de confirmação síncrona e, imediatamente após o failover, os aplicativos com intenção de leitura podem se reconectar a uma das réplicas secundárias de confirmação assíncrona. No entanto, quando ocorre um desastre no centro de computação principal, as duas réplicas de confirmação síncrona são perdidas. O administrador do banco de dados no site satélite responde realizando um failover manual forçado para uma réplica secundária de confirmação assíncrona. Os bancos de dados secundários na réplica secundária restante ficam suspensos devido ao failover forçado, tornando-os indisponíveis para cargas de trabalho de somente leitura. A nova réplica primária, que está configurada para conexões de leitura e gravação, impede que a carga de trabalho de intenção de leitura concorra com a carga de trabalho de leitura e gravação. Isso significa que, até que o administrador de banco de dados retome os bancos de dados secundários na réplica secundária restante com confirmação assíncrona, os clientes de intenção de leitura não podem se conectar a nenhuma réplica de disponibilidade.
Tarefas Relacionadas
Configurar o acesso somente para leitura em uma réplica de disponibilidade (SQL Server)
Configurar o roteamento de somente leitura para um grupo de disponibilidade (SQL Server)
Exibir as propriedades da réplica de disponibilidade (SQL Server)
Usar a caixa de diálogo Novo Grupo de Disponibilidade (SQL Server Management Studio)
Conteúdo relacionado
- Guia de soluções AlwaysOn do Microsoft SQL Server para alta disponibilidade e recuperação de desastre
- Blog da equipe do Always On do SQL Server: o blog oficial da equipe do Always On do SQL Server
- O que é um grupo de disponibilidade Always On?
- Conectar-se a um ouvinte do grupo de disponibilidade Always On
- Estatísticas