View a markdown version of this page

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 obter mais informações, consulte Usar perfis de banco de dados e autenticação do IAM.
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.

Parâmetros de sessão compatíveis

O Aurora DSQL otimiza automaticamente o armazenamento, o gerenciamento de conexões e o processamento de transações, oferecendo suporte a um conjunto específico de parâmetros de sessão. O Aurora DSQL aceita os parâmetros listados na tabela a seguir. Os parâmetros fora desse conjunto retornam o seguinte erro:

ERROR: setting configuration parameter "parameter_name" not supported

O Aurora DSQL é compatível com os seguintes parâmetros de sessão PostgreSQL. Salvo indicação em contrário, você pode defini-los usando SET, SET SESSION ou como opções de string de conexão. Você também pode usar SET LOCAL para definir qualquer um desses parâmetros para a duração de uma única transação. Usa RESET para que um parâmetro volte ao valor padrão.

Parâmetros de sessão compatíveis
Parâmetro Categoria Descrição
application_name Identificação de cliente Define o nome do aplicativo relatado nos metadados da conexão. Útil para identificar conexões no monitoramento.
client_encoding Tradução Define a codificação de caracteres do cliente. O banco de dados usa UTF-8 internamente.
datestyle Formatação de saída Define o formato de exibição de valores de data e hora (por exemplo, ISO, MDY).
extra_float_digits Formatação de saída Define o número de dígitos exibidos para valores de ponto flutuante. Alguns drivers, como o JDBC, usam esse parâmetro.
intervalstyle Formatação de saída Define o formato de exibição para valores de intervalo.
timezone Tradução Define o fuso horário da sessão. O Aurora DSQL armazena todas as datas e horários com reconhecimento de fuso horário internamente em UTC. Esse parâmetro controla como o Aurora DSQL exibe valores para o cliente.
search_path Resolução de esquema Define a ordem de pesquisa de esquemas para nomes de objetos não qualificados.
enable_bitmapscan Planejador de consultas Ativa ou desativa o uso dos tipos de plano de verificação de bitmap pelo planejador de consultas.
enable_hashjoin Planejador de consultas Ativa ou desativa o uso dos tipos de plano de junção de hash pelo planejador de consultas.
enable_indexonlyscan Planejador de consultas Ativa ou desativa o uso dos tipos de plano de verificação apenas de índice pelo planejador de consultas.
enable_indexscan Planejador de consultas Ativa ou desativa o uso dos tipos de plano de verificação de índice pelo planejador de consultas.
enable_material Planejador de consultas Ativa ou desativa o uso da materialização pelo planejador de consultas.
enable_mergejoin Planejador de consultas Ativa ou desativa o uso dos tipos de plano de mesclagem pelo planejador de consultas.
enable_nestloop Planejador de consultas Ativa ou desativa o uso dos planos de junção de loop aninhado pelo planejador de consultas.
enable_seqscan Planejador de consultas Ativa ou desativa o uso dos tipos de plano de verificação sequencial pelo planejador de consultas.
disable_sync_create_index Específico do Aurora DSQL Controla se CREATE INDEX é executado de forma assíncrona. O padrão é on, o que significa que o Aurora DSQL cria índices de forma assíncrona. Defina como off para criar índices de forma síncrona em tabelas vazias.
role Identidade da sessão Define a função atual. No Aurora DSQL, você só pode definir esse parâmetro usando SET LOCAL dentro de um bloco de transação.

O Aurora DSQL gerencia automaticamente os seguintes aspectos do seu banco de dados, para que você não precise configurar os parâmetros correspondentes da sessão do PostgreSQL:

  • Parâmetros de conexão e rede: o Aurora DSQL gerencia internamente o ciclo de vida da conexão e as configurações de TCP, incluindo tcp_keepalives_idle, tcp_keepalives_interval e tcp_keepalives_count.

  • Parâmetros de memória e recursos: o Aurora DSQL gerencia automaticamente a alocação de memória, incluindo work_mem e shared_buffers.

  • Parâmetros de tempo limite: o Aurora DSQL impõe seus próprios limites de duração da transação, incluindo statement_timeout, lock_timeout e idle_in_transaction_session_timeout.

  • Parâmetros de replicação e WAL: o Aurora DSQL gerencia a replicação automaticamente por meio de sua arquitetura multirregional integrada, incluindo wal_level e synchronous_commit.

  • Parâmetros de registro: o Aurora DSQL gerencia o registro internamente, incluindo log_statement e client_min_messages.

  • Parâmetros de transação: o Aurora DSQL usa um nível de isolamento REPEATABLE READ fixo para todas as transações. Se o driver precisar especificar um nível de isolamento, use BEGIN ISOLATION LEVEL REPEATABLE READ.

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.

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.