Recursos do PostgreSQL não compatíveis no Aurora DSQL
O Aurora DSQL é compatível com o PostgreSQL. Isso significa que o Aurora DSQL é compatível com os principais recursos relacionais, como transações ACID, índices secundários, junções, inserções e atualizações. Para obter uma visão geral dos recursos SQL compatíveis, consulte as expressões SQL compatíveis.
As seções a seguir destacam quais recursos do PostgreSQL não podem ser usados no momento no Aurora DSQL.
Objetos não compatíveis
Os objetos não aceitos pelo Aurora DSQL incluem o seguinte:
-
Vários bancos de dados em um único cluster do Aurora DSQL
-
Tabelas temporárias
-
Acionadores
-
Tipos (suporte parcial)
-
Tablespaces
-
Funções escritas em linguagens diferentes do SQL
-
Sequências
-
Partições
Restrições não compatíveis
-
Chaves externas
-
Restrições de exclusão
Comandos incompatíveis
-
ALTER SYSTEM
-
TRUNCATE
-
SAVEPOINT
-
VACUUM
nota
O Aurora DSQL não requer limpeza. O sistema mantém estatísticas e gerencia a otimização do armazenamento automaticamente sem comandos vacuum manuais.
Extensões não compatíveis
O Aurora DSQL não é compatível com extensões do PostgreSQL. A tabela a seguir mostra as extensões que não são aceitas:
-
PL/pgSQL
-
PostGIS
-
PGVector
-
PGAudit
-
Postgres_FDW
-
PGCron
-
pg_stat_statements
Expressões de filtro incompatíveis
A tabela a seguir descreve as cláusulas que não são aceitas no Aurora DSQL.
Categoria | Cláusula primária | Cláusulas não compatível |
---|---|---|
|
|
|
|
|
|
|
||
|
|
Todos os comandos |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Não é possível criar bancos de dados adicionais. |
1 Consulte Índices assíncronos no Aurora DSQL para criar um índice em uma coluna de uma tabela especificada.
Considerações sobre o Aurora DSQL para compatibilidade com o PostgreSQL
Considere as limitações de compatibilidade a seguir ao usar o Aurora DSQL. Com relação a considerações gerais, consulte Considerações para trabalhar com Amazon Aurora DSQL. Com relação a cotas e limites, consulte Cotas de cluster e limites de banco de dados no Amazon Aurora DSQL.
-
O Aurora DSQL usa um único banco de dados incorporado chamado
postgres
. Não é possível criar bancos de dados adicionais nem renomear ou excluir o banco de dadospostgres
. -
O banco de dados
postgres
usa a codificação de caracteres UTF-8. Não é possível alterar a criptografia. -
O banco de dados usa somente o agrupamento
C
. -
O Aurora DSQL usa
UTC
como fuso horário do sistema. Não é possível modificar o fuso horário usando parâmetros ou instruções SQL, comoSET TIMEZONE
. -
O nível de isolamento de transação é fixo em
Repeatable Read
no PostgreSQL. -
As transações têm as seguintes restrições:
-
Uma transação não pode misturar operações de DDL e de DML.
-
Uma transação pode incluir apenas uma instrução de DDL.
-
Uma transação pode modificar até 3 mil linhas, independentemente do número de índices secundários.
-
O limite de 3 mil linhas se aplica a todas as instruções de DML (
INSERT
,UPDATE
eDELETE
).
-
-
As conexões de banco de dados atingem o tempo limite após uma hora.
-
No momento, o Aurora DSQL não permite que você execute
GRANT [permission] ON DATABASE
. Se você tentar executar essa instrução, o Aurora DSQL exibirá a mensagem de erroERROR: unsupported object type in GRANT
. -
O Aurora DSQL não permite que perfis de usuário não administrativo executem o comando
CREATE SCHEMA
. Não é possível executar o comandoGRANT [permission] on DATABASE
e conceder permissõesCREATE
no banco de dados. Se um perfil de usuário não administrativo tentar criar um esquema, o Aurora DSQL exibirá a mensagem de erroERROR: permission denied for database postgres
. -
Os usuários que não são administradores não podem criar objetos no esquema público. Somente usuários administradores podem criar objetos no esquema público. O perfil de usuário administrador tem permissões para conceder acesso de leitura, gravação e modificação a esses objetos para usuários não administradores, mas não pode conceder permissões
CREATE
para o esquema público em si. Os usuários não administradores devem usar esquemas diferentes criados pelo usuário para criar objetos. -
O Aurora DSQL não aceita o comando
ALTER ROLE [] CONNECTION LIMIT
. Entre em contato com o AWS Support se precisar aumentar o limite de conexão. -
O Aurora DSQL não oferece suporte ao asyncpg, o driver assíncrono de banco de dados PostgreSQL para Python.