Acessar o Aurora DSQL com clientes compatíveis com o PostgreSQL - Amazon Aurora DSQL

Acessar o Aurora DSQL com clientes compatíveis com o PostgreSQL

O Aurora DSQL usa o protocolo wire do PostgreSQL. Você pode se conectar ao PostgreSQL usando uma série de ferramentas e clientes, como AWS CloudShell, psql, DBeaver e DataGrip. A tabela a seguir resume como o Aurora DSQL associa parâmetros comuns de conexão do PostgreSQL:

PostgreSQL Aurora DSQL Observações
Perfil (também conhecido como usuário ou grupo) Perfil de banco de dados O Aurora DSQL cria um perfil chamado admin para você. Ao criar perfis de banco de dados personalizados, você deve usar o perfil admin para associá-los aos perfis do IAM para autenticação ao se conectar ao cluster. Para ter mais informações, consulte Configure custom database roles.
Host (também conhecido como nome de host ou hostspec) Endpoint do cluster Os clusters de região única do Aurora DSQL oferecem um único endpoint gerenciado e redirecionam automaticamente o tráfego se houver indisponibilidade na região.
Porta N/D: use o padrão 5432. Esse é o padrão do PostgreSQL.
Banco de dados (dbname) Use postgres. O Aurora DSQL cria esse banco de dados para você quando você cria o cluster.
Modo SSL O SSL está sempre habilitado do lado do servidor. No Aurora DSQL, o Aurora DSQL é compatível com o modo SSL require. Conexões sem SSL são rejeitadas pelo Aurora DSQL.
Senha Token de autenticação O Aurora DSQL exige tokens de autenticação temporários em vez de senhas de longa duração. Para saber mais, consulte Gerar um token de autenticação no Amazon Aurora DSQL.

Ao se conectar, o Aurora DSQL exige um token de autenticação do IAM assinado no lugar de uma senha tradicional. Esses tokens temporários são gerados usando o AWS Signature Versão 4 e são usados somente durante o estabelecimento da conexão. Depois de conectada, a sessão permanece ativa até que ela termine ou o cliente se desconecte.

Se você tentar abrir uma nova sessão com um token expirado, a solicitação de conexão falhará e um novo token deverá ser gerado. Para obter mais informações, consulte Gerar um token de autenticação no Amazon Aurora DSQL.

Acessar o Aurora DSQL usando clientes SQL

O Aurora DSQL comporta vários clientes compatíveis com PostgreSQL para conexão com seu cluster. As seções a seguir descrevem como se conectar usando o PostgreSQL com AWS CloudShell ou sua linha de comandos local, bem como ferramentas baseadas em GUI, como DBeaver e JetBrains DataGrip. Cada cliente exige um token de autenticação válido, conforme descrito na seção anterior.

Use o AWS CloudShell para acessar o Aurora DSQL com o terminal interativo do PostgreSQL (psql).

Use o procedimento a seguir para acessar o Aurora DSQL com o terminal interativo do PostgreSQL do AWS CloudShell. Para obter mais informações, consulte O que é o AWS CloudShell.

Como se conectar usando AWS CloudShell
  1. Faça login no console do Aurora DSQL.

  2. Escolha o cluster que você deseja abrir no CloudShell. Se você ainda não criou um cluster, siga as etapas em Etapa 1: criar um cluster do Aurora DSQL de região única ou Criar um cluster multirregional.

  3. Escolha Conectar com o Editor de consultas e, depois, selecione Conectar com o CloudShell.

  4. Escolha se você deseja se conectar como administrador ou com um perfil de banco de dados personalizado.

  5. Escolha Iniciar no CloudShell e selecione Executar na caixa de diálogo do CloudShell a seguir.

Use a CLI local para acessar o Aurora DSQL com o terminal interativo do PostgreSQL (psql).

Use psql, um frontend baseado em terminal para o utilitário PostgreSQL, para inserir consultas interativamente, emiti-las para o PostgreSQL e visualizar os resultados da consulta.

nota

Para melhorar os tempos de resposta das consultas, use o cliente PostgreSQL versão 17. Se você usar a CLI em um ambiente diferente, configure manualmente o Python versão 3.8+ e o psql versão 14+.

Baixe o instalador do seu sistema operacional na página PostgreSQL Downloads. Para acessar mais informações sobre psql, consulte Aplicações cliente do PostgreSQL no site do PostgreSQL.

Se você já tem a AWS CLI instalada, use o exemplo a seguir para se conectar ao cluster.

# Aurora DSQL requires a valid IAM token as the password when connecting. # Aurora DSQL provides tools for this and here we're using Python. export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token \ --region us-east-1 \ --expires-in 3600 \ --hostname your_cluster_endpoint) # Aurora DSQL requires SSL and will reject your connection without it. export PGSSLMODE=require # Connect with psql, which automatically uses the values set in PGPASSWORD and PGSSLMODE. # Quiet mode suppresses unnecessary warnings and chatty responses but still outputs errors. psql --quiet \ --username admin \ --dbname postgres \ --host your_cluster_endpoint

Use o DBeaver para acessar o Aurora DSQL

O DBeaver é um cliente SQL universal que pode ser usado para gerenciar qualquer banco de dados que tenha um driver JDBC. Ele é amplamente usado entre desenvolvedores e administradores de banco de dados por conta de seus recursos robustos de visualização, edição e gerenciamento de dados. Usando as opções de conectividade em nuvem do DBeaver, é possível conectar o DBeaver ao Aurora DSQL de forma nativa.

Os produtos DBeaver PRO (DBeaver Ultimate, DBeaver Team, CloudBeaver Enterprise e CloudBeaver AWS) oferecem integração nativa ao Aurora DSQL a partir da versão 25.3 por meio de um tipo de conexão dedicado do Aurora DSQL, bem como por meio do Cloud Explorer com uma experiência de autenticação perfeita.

Se você estiver usando uma versão diferente do DBeaver, incluindo o DBeaver Community Edition, que é a versão gratuita e de código aberto, acesse a página de download para ter instruções de instalação. Use o procedimento a seguir para se conectar ao cluster.

Como configurar uma nova conexão do Aurora DSQL no DBeaver
  1. Escolha Nova conexão de banco de dados.

  2. Na janela Nova conexão de banco de dados, escolha PostgreSQL.

  3. Na guia Configurações de conexão/Principal, escolha Conectar por: host e insira as seguintes informações.

    1. Host: use o endpoint do cluster.

      Banco de dados: insira postgres.

      Autenticação: escolha Database Native.

      Nome de usuário: insira admin.

      Senha: gere um token de autenticação. Copie o token gerado e use-o como senha.

  4. Ignore quaisquer avisos e cole o token de autenticação no campo Senha do DBeaver.

    nota

    Você deve definir o modo SSL nas conexões de cliente. O Aurora DSQL permite o PGSSLMODE=require and PGSSLMODE=verify-full. O Aurora DSQL impõe a comunicação SSL do lado do servidor e rejeita conexões que não sejam SSL. Para a opção verify-full, você precisará instalar os certificados SSL localmente. Para acessar mais informações, consulte Certificados SSL/TLS.

  5. Para começar a executar instruções SQL, você deve se conectar ao cluster.

Importante

Os recursos administrativos fornecidos pelo DBeaver para os bancos de dados PostgreSQL (como o Gerenciador de Sessões e o Gerenciador de Bloqueios) não se aplicam a bancos de dados do Aurora DSQL devido à respectiva arquitetura exclusiva. Embora acessíveis, essas telas não fornecem informações confiáveis sobre a integridade ou o status do banco de dados.

Usar o JetBrains DataGrip para acessar o Aurora DSQL

O JetBrains DataGrip é um IDE multiplataforma para trabalhar com SQL e bancos de dados, incluindo o PostgreSQL. O DataGrip oferece uma interface gráfica robusta e um editor SQL inteligente. Para baixar o DataGrip, acesse a página de download no site da JetBrains.

Como configurar uma nova conexão do Aurora DSQL no JetBrains DataGrip
  1. Escolha Nova fonte de dados e selecione PostgreSQL.

  2. Na guia Fontes de dados/Geral, insira as seguintes informações:

    1. Host: use o endpoint do cluster.

      Porta: o Aurora DSQL usa o padrão do PostgreSQL: 5432.

      Banco de dados: o Aurora DSQL usa o padrão do PostgreSQL: postgres.

      Autenticação: escolha User & Password .

      Nome de usuário: insira admin.

      Senha: gere um token e cole-o neste campo.

      URL: não modifique este campo. Ele será preenchido automaticamente com base nos outros campos.

  3. Senha: forneça-a gerando um token de autenticação. Copie a saída resultante do gerador de token e cole-a no campo de senha.

    nota

    Você deve definir o modo SSL nas conexões de cliente. O Aurora DSQL permite o PGSSLMODE=require and PGSSLMODE=verify-full. O Aurora DSQL impõe a comunicação SSL do lado do servidor e rejeita conexões que não sejam SSL. Para a opção verify-full, você precisará instalar os certificados SSL localmente. Para acessar mais informações, consulte Certificados SSL/TLS.

  4. Para começar a executar instruções SQL, você deve conectar-se ao cluster.

Importante

Algumas visualizações fornecidas pelo DataGrip para bancos de dados PostgreSQL (como sessões) não se aplicam a bancos de dados devido à respectiva arquitetura exclusiva. Embora acessíveis, essas telas não fornecem informações confiáveis sobre as sessões reais conectadas ao banco de dados.

Solução de problemas

Expiração das credenciais de autenticação para os clientes SQL

As sessões estabelecidas permanecem autenticadas por no máximo 1 hora ou até que ocorra uma desconexão explícita ou um tempo limite do lado do cliente. Se for necessário estabelecer novas conexões, um novo token de autenticação deverá ser gerado e fornecido no campo Senha da conexão. Quando você tenta abrir uma nova sessão (por exemplo, para listar novas tabelas ou abrir um novo console do SQL), uma nova tentativa de autenticação é forçada. Se o token de autenticação configurado nas configurações de Conexão não for mais válido, essa nova sessão falhará e todas as sessões abertas anteriormente se tornarão inválidas. Tenha isso em mente ao escolher a duração do token de autenticação do IAM com a opção expires-in que pode ser definida como 15 minutos por padrão e como um valor máximo de sete dias.

Além disso, consulte a seção Solução de problemas da documentação do Aurora DSQL.