Características de PostgreSQL no admitidas en Aurora DSQL
Aurora DSQL es compatible con PostgreSQL. Esto significa que Aurora DSQL admite características relacionales básicas como transacciones ACID, índices secundarios, uniones, inserciones y actualizaciones. Para obtener información general de las características de SQL compatibles, consulte Expresiones SQL admitidas.
En las siguientes secciones se destacan las características de PostgreSQL que actualmente no se admiten en Aurora DSQL.
Objetos no admitidos
Entre los objetos no compatibles con Aurora DSQL se incluyen los siguientes:
-
Varias bases de datos en un único clúster de Aurora DSQL
-
Tablas temporales
-
Desencadenadores
-
Tipos (compatibilidad parcial)
-
Espacios de tabla
-
Funciones escritas en lenguajes distintos de SQL
-
Secuencias
-
Particiones
Restricciones no admitidas
-
Claves externas
-
Restricciones de exclusión
Comandos admitidos
-
ALTER SYSTEM
-
TRUNCATE
-
SAVEPOINT
-
VACUUM
nota
Aurora DSQL no requiere vaciado. El sistema mantiene las estadísticas y administra la optimización del almacenamiento automáticamente sin comandos de vaciado manuales.
Extensiones no admitidas
Aurora DSQL no admite las extensiones de PostgreSQL. La tabla siguiente muestra las extensiones que no se admiten:
-
PL/pgSQL
-
PostGIS
-
PGVector
-
PGAudit
-
Postgres_FDW
-
PGCron
-
pg_stat_statements
Expresiones SQL no admitidas
En la siguiente tabla se describen las cláusulas que no se admiten en Aurora DSQL.
Categoría | Cláusula principal | Cláusula no admitida |
---|---|---|
|
|
|
|
|
|
|
||
|
|
Todos los comandos |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
No puede crear bases de datos adicionales. |
1 Consulte Índices asíncronos en Aurora DSQL para crear un índice en una columna de una tabla específica.
Consideraciones de Aurora DSQL para la compatibilidad de PostgreSQL
Tenga en cuenta las siguientes limitaciones de compatibilidad cuando utilice Aurora DSQL. Para obtener información general, consulte Consideraciones para trabajar con Amazon Aurora DSQL. Para obtener información acerca de las cuotas y los límites, consulte Cuotas de clúster y límites de base de datos en Amazon Aurora DSQL.
-
Aurora DSQL utiliza una única base de datos integrada denominada
postgres
. No puede crear bases de datos adicionales ni cambiar el nombre o eliminar la base de datos depostgres
. -
La base de datos de
postgres
utiliza la codificación de caracteres UTF-8. No puede cambiar la codificación. -
La base de datos usa solo la intercalación de
C
. -
Aurora DSQL utiliza
UTC
como la zona horaria del sistema. No puede modificar la zona horaria mediante parámetros o instrucciones SQL comoSET TIMEZONE
. -
El nivel de aislamiento de las transacciones se fija en PostgreSQL
Repeatable Read
. -
Las transacciones tienen las siguientes restricciones:
-
Una transacción no puede mezclar operaciones DDL y DML
-
Una transacción solo puede incluir 1 instrucción DDL
-
Una transacción puede modificar hasta 3000 filas, independientemente del número de índices secundarios
-
El límite de 3000 filas se aplica a todas las instrucciones DML (
INSERT
,UPDATE
,DELETE
)
-
-
Las conexiones a la base de datos caducan después de 1 hora.
-
En estos momentos, Aurora DSQL no le permite ejecutar
GRANT [permission] ON DATABASE
. Si intenta ejecutar esa instrucción, Aurora DSQL devuelve el mensaje de errorERROR: unsupported object type in GRANT
. -
Aurora DSQL no permite que los roles de usuario que no son administradores ejecuten el comando
CREATE SCHEMA
. No puede ejecutar el comandoGRANT [permission] on DATABASE
ni conceder permisosCREATE
en la base de datos. Si un rol de usuario que no es administrador intenta crear un esquema, Aurora DSQL devuelve el mensaje de errorERROR: permission denied for database postgres
. -
Los usuarios que no son administradores no pueden crear objetos en el esquema público. Solo los usuarios administradores pueden crear objetos en el esquema público. El rol de usuario administrador tiene permisos para conceder acceso de lectura, escritura y modificación a estos objetos a los usuarios que no son administradores, pero no puede conceder permisos
CREATE
al propio esquema público. Los usuarios que no son administradores deben utilizar esquemas diferentes, creados por el usuario, para la creación de objetos. -
Aurora DSQL no admite el comando
ALTER ROLE [] CONNECTION LIMIT
. Póngase en contacto con el servicio de asistencia de AWS si necesita aumentar el límite de conexiones. -
Aurora DSQL no admite asyncpg, el controlador asíncrono de base de datos PostgreSQL para Python.