Conectar-se a um cluster de banco de dados multi-AZ no Amazon RDS - Amazon Relational Database Service

Conectar-se a um cluster de banco de dados multi-AZ no Amazon RDS

Um cluster de banco de dados multi-AZ tem três instâncias de banco de dados em vez de uma única instância de banco de dados. Cada conexão é processada por uma instância de banco de dados específica. Quando você se conecta a um cluster de banco de dados multi-AZ, o nome de host e a porta especificados apontam para um nome de domínio totalmente qualificado chamado de endpoint. O cluster de banco de dados multi-AZ utiliza o mecanismo de endpoint para abstrair essas conexões para que você não precise especificar exatamente a qual instância de banco de dados no cluster de banco de dados se conectar. Por isso, você não precisa codificar todos os nomes de host ou escrever a própria lógica para reorganizar conexões quando algumas instâncias de banco de dados não estão disponíveis.

O endpoint do gravador conecta-se à instância de banco de dados de gravador do cluster de banco de dados, que oferece suporte a operações de leitura e gravação. O endpoint leitor se conecta a qualquer uma das duas instâncias de banco de dados de leitor, que aceitam apenas operações de leitura.

Usando endpoints, você pode mapear todas as conexões para a instância de banco de dados apropriada ou o grupo de instâncias de banco de dados com base no seu caso de uso. Por exemplo, para realizar instruções DDL e DML, conecte-se à instância de banco de dados que atua como gravador. Para realizar consultas, você pode se conectar ao endpoint leitor, com o cluster de banco de dados multi-AZ gerenciando automaticamente as conexões entre as instâncias de banco de dados de leitor. Para diagnósticos ou ajustes, conecte-se a um endpoint de instância de banco de dados específico para examinar detalhes sobre uma instância de banco de dados específica.

Para saber mais sobre como se conectar à sua instância de banco de dados, consulte Conectar a uma instância de banco de dados do Amazon RDS.

Consulte mais informações sobre como se conectar a clusters de banco de dados nos tópicos a seguir.

Tipos de endpoints de cluster de banco de dados multi-AZ

Um endpoint é representado por um identificador exclusivo que contém um endereço de host. Os tipos de endpoints a seguir estão disponíveis em um cluster de banco de dados multi-AZ:

Endpoint do cluster

Um endpoint de cluster (ou endpoint de gravador) de um cluster de banco de dados multi-AZ se conecta à instância de banco de dados de gravador atual desse cluster de banco de dados. Esse endpoint é o único capaz de realizar operações de gravação, como instruções DDL e DML. Esse endpoint também pode realizar operações de leitura.

Cada cluster de banco de dados multi-AZ tem um único endpoint de cluster e uma única instância de banco de dados de gravador.

Use o endpoint cluster em todas as operações de gravação no cluster de banco de dados, inclusive inserções, atualizações, exclusões e alterações DDL. Você também pode usar o endpoint de cluster para operações de leitura, como consultas.

Se a instância de banco de dados de gravador atual de um cluster de banco de dados falhar, o cluster de banco de dados multi-AZ fará failover automático para uma nova instância de banco de dados de gravador. Durante um failover, o cluster de banco de dados continua atendendo a solicitações de conexão para o endpoint de cluster pela nova instância de banco de dados de gravador, com interrupção mínima de serviço.

O exemplo a seguir ilustra um endpoint de cluster para um cluster de banco de dados multi-AZ.

mydbcluster.cluster-123456789012.us-east-1.rds.amazonaws.com

Consulte mais informações sobre como se conectar endpoints de cluster em Usar o endpoint para clusters de banco de dados multi-AZ do Amazon RDS.

Endpoint de leitor

Um endpoint leitor de um cluster de banco de dados multi-AZ é compatível com balanceamento de carga para conexões somente leitura com o cluster de banco de dados. Use o endpoint do leitor para operações de leitura, como consultas SELECT. Ao processar essas instruções nas instâncias de banco de dados de leitor, esse endpoint reduz a sobrecarga na instância de banco de dados de gravador. Ele também ajuda o cluster a escalar a capacidade de processar consultas SELECT simultâneas. Cada cluster de banco de dados multi-AZ tem um único endpoint de leitor.

O endpoint leitor envia cada solicitação de conexão para uma das instâncias de banco de dados de leitor. Quando você usa o endpoint de leitor para uma sessão, apenas é possível executar instruções somente leitura, como SELECT, nessa sessão.

O exemplo a seguir ilustra um endpoint de leitor para um cluster de banco de dados multi-AZ. A intenção somente leitura de um endpoint leitor é indicada por -ro no nome do endpoint do cluster.

mydbcluster.cluster-ro-123456789012.us-east-1.rds.amazonaws.com

Consulte mais informações sobre como se conectar a endpoints de leitor em Usar o endpoint de leitor para clusters de banco de dados multi-AZ do Amazon RDS.

Endpoint da instância

Um endpoint de instância conecta-se a uma instância de banco de dados específica dentro de um cluster de banco de dados multi-AZ. Cada instância de banco de dados em um cluster de banco de dados, tem o próprio endpoint de instância exclusivo. Portanto, há um endpoint de instância para a instância de banco de dados de gravador atual do cluster de banco de dados e há um endpoint de instância para cada uma das instâncias de banco de dados de leitor no cluster de banco de dados.

O endpoint de instância oferece controle direto sobre as conexões com o cluster de banco de dados. Esse controle pode ajudar a resolver cenários nos quais talvez não seja apropriado utilizar o endpoint de cluster ou o endpoint de leitor. Por exemplo, o aplicativo cliente pode exigir um balanceamento de carga mais refinado com base no tipo de workload. Nesse caso, é possível configurar vários clientes para se conectarem a instâncias de banco de dados diferentes em um cluster de banco de dados com o objetivo de distribuir workloads de leitura.

O exemplo a seguir ilustra um endpoint de instância para uma instância de banco de dados em um cluster de banco de dados multi-AZ.

mydbinstance.123456789012.us-east-1.rds.amazonaws.com

Consulte mais informações sobre como se conectar a endpoints de instância em Usar endpoints de instância para clusters de banco de dados multi-AZ do Amazon RDS.

Visualizar os endpoints de um cluster de banco de dados multi-AZ

Use o console, a AWS CLI ou a API do Amazon RDS para visualizar os endpoints de cluster, de leitor e da instância.

Console

No AWS Management Console, você vê o endpoint de cluster e o endpoint de leitor na página de detalhes de cada cluster de banco de dados multi-AZ. Você vê o endpoint de instância na página de detalhes de cada instância de banco de dados.

AWS CLI

Com a AWS CLI, você vê os endpoints de gravador e leitor na saída do comando describe-db-clusters. Por exemplo, o comando a seguir mostra os atributos de endpoint para todos os clusters na região atual da AWS.

aws rds describe-db-cluster-endpoints
Amazon RDS API

Com a API do Amazon RDS, você recupera os endpoints chamando a ação DescribeDBClusterEndpoints. Essa saída também mostra endpoints de cluster de bancos de dados Amazon Aurora, se houver.