View a markdown version of this page

Evaluaciones de PostgreSQL - AWS Database Migration Service
Validación para comprobar si el desencadenador de eventos DDL está configurado como ENABLE ALWAYSValidación para comprobar si existen columnas PostGIS en la base de datos de origenValidación para comprobar si la restricción de clave externa está deshabilitada en las tablas de destino durante el proceso de carga completaValidación para comprobar si existen tablas con nombres similaresValidación para comprobar si hay tablas con el tipo de datos ARRAY sin una clave principalValide si existen claves principales o índices únicos en las tablas de destino cuando está habilitada BatchApplyEnabledValidación para comprobar si alguna tabla de la base de datos de destino tiene índices secundarios para la tarea de migración de carga completaValide que el modo LOB limitado solo se use cuando BatchApplyEnabled esté establecido en verdaderoValidación para comprobar si DMS admite la versión de la base de datos de origen para la migraciónValide el parámetro logical_decoding_work_mem en la base de datos de origenValidación para comprobar si la base de datos de origen tiene transacciones de larga duraciónValide el parámetro max_slot_wal_keep_size de la base de datos de origenCompruebe si el parámetro postgres-check-maxwalsenders de la base de datos de origen está configurado para admitir los CDC. Compruebe si la base de datos de origen está configurada para PGLOGICAL Validación para comprobar si la clave principal de la tabla de origen es del tipo de datos LOBValidación para comprobar si la tabla de origen tiene una clave principalValidación para comprobar si hay transacciones preparadas en la base de datos de origenValide si wal_sender_timeout está establecido en un valor mínimo requerido para respaldar el DMS CDCValide si wal_level está configurado como lógico en la base de datos fuenteValidación de si existe una clave principal y un índice único en el destino para la aplicación por lotesCuando se encuentren objetos LOB, se recomienda usar el valor de LOB máximoValidación de si la tabla tiene una clave principal o un índice único y su estado es correcto cuando la validación de DMS esté activadaValide si AWS DMS el usuario tiene los privilegios necesarios para el objetivoValida la disponibilidad de ranuras de replicación gratuitas para CDCVerificación de los permisos de carga completa del usuario de DMSComprobación de la regla de transformación Digits RandomizeComprobación de la regla de transformación Digits MaskComprobación de la regla de transformación Hashing MaskComprobación de que la configuración de la tarea de validación de datos y la asignación al azar de dígitos de enmascaramiento de datos no estén activadas simultáneamenteComprobación de que la configuración de la tarea de validación de datos y la máscara de hash de enmascaramiento de datos no estén activadas simultáneamenteComprobación de que la configuración de la tarea de validación de datos y la máscara de dígitos de enmascaramiento de datos no estén activadas simultáneamenteValide que exista al menos un objeto seleccionado en la base de datos de origenValide que la base de datos PostgreSQL de destino contenga las columnas generadasValide que existan vistas materializadas en migraciones homogéneas de PostgreSQLValide que REPLICA IDENTITY FULL entre en conflicto con el uso del complemento pglogicalValide que las restricciones e índices secundarios (no principales) estén presentes en la base de datos fuenteCHAR/VARCHAR Valide la compatibilidad de las columnas para la migración a OracleValide que la configuración idle_in_transaction_session_timeout esté configurada en la base de datos de origenValide eso AWS DMS el usuario tiene los roles necesarios para AWS-bases de datos PostgreSQL administradasCompruebe que el punto final de destino no sea una réplica de lecturaVerifique la versión de réplica leída de Aurora PostgreSQL de origenVerifique la versión original de PostgreSQL, lea la réplica

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Evaluaciones de PostgreSQL

En esta sección se describen las evaluaciones previas a la migración individuales para las tareas de migración que utilizan un punto de conexión de origen de PostgreSQL.

Temas

Validación para comprobar si el desencadenador de eventos DDL está configurado como ENABLE ALWAYS

Clave de la API: postgres-check-ddl-event-trigger

Esta evaluación previa a la migración valida si el desencadenador de eventos DDL está establecido en ENABLE ALWAYS. Cuando la base de datos de origen también es el destino de otro sistema de replicación de terceros, es posible que los cambios de DDL no se migren durante el proceso de CDC. Esta situación puede impedir que DMS desencadene el evento awsdms_intercept_ddl. Para evitar esta situación, modifique el activador en su base de datos de origen, como en el siguiente ejemplo:

alter event trigger awsdms_intercept_ddl enable always;

Para obtener más información, consulte Restricciones en el uso de una base de datos de PostgreSQL como origen de DMS.

Validación para comprobar si existen columnas PostGIS en la base de datos de origen

Clave de la API: postgres-check-postgis-data-type

Esta evaluación previa a la migración valida si las columnas del tipo de datos PostGIS que existen en caso de que los motores de origen y de destino sean diferentes. AWS DMS admite el tipo de datos PostGIS solo para migraciones homogéneas (de igual a igual).

Para obtener más información, consulte Restricciones en el uso de una base de datos de PostgreSQL como origen de DMS.

Validación para comprobar si la restricción de clave externa está deshabilitada en las tablas de destino durante el proceso de carga completa

Clave de la API: postgres-check-session-replication-role

Esta evaluación previa a la migración valida si session_replication_role parameter está establecido en REPLICA en el destino para deshabilitar las restricciones de clave externa durante la fase de carga completa. Para los tipos de migración de carga completa, debe deshabilitar las restricciones de clave externa.

Para obtener información sobre las limitaciones de los puntos de conexión de PostgreSQL, consulte Uso de una base de datos de PostgreSQL como destino para AWS Database Migration Service.

Validación para comprobar si existen tablas con nombres similares

Clave de la API: postgres-check-similar-table-name

Esta evaluación previa a la migración valida si hay tablas con nombres similares en el origen. Tener varias tablas con el mismo nombre escrito en mayúsculas y en minúsculas puede provocar comportamientos impredecibles durante la replicación.

Para obtener información sobre las limitaciones de los puntos de conexión de PostgreSQL, consulte Restricciones en el uso de una base de datos de PostgreSQL como origen de DMS.

Validación para comprobar si hay tablas con el tipo de datos ARRAY sin una clave principal

Clave de la API: postgres-check-table-with-array

Esta evaluación previa a la migración valida si hay tablas con el tipo de datos de matriz sin una clave principal. Una tabla con un tipo de datos ARRAY a la que le falte una clave principal se ignora durante la carga completa.

Para obtener información sobre las limitaciones de los puntos de conexión de PostgreSQL, consulte Restricciones en el uso de una base de datos de PostgreSQL como origen de DMS.

Valide si existen claves principales o índices únicos en las tablas de destino cuando está habilitada BatchApplyEnabled

Clave de la API: postgres-check-batch-apply-target-pk-ui-absence

La aplicación por lotes solo se admite en las tablas con claves principales o índices únicos en la tabla de destino. Las tablas sin claves principales ni índices únicos provocarán un error en el lote y AWS DMS procesarán los cambios uno por uno. Se recomienda crear tareas independientes para dichas tablas y utilizar en su lugar el modo de aplicación transaccional. Como alternativa, puede crear una clave única en la tabla de destino.

Para obtener más información, consulte Uso de una base de datos de PostgreSQL como destino para AWS Database Migration Service.

Validación para comprobar si alguna tabla de la base de datos de destino tiene índices secundarios para la tarea de migración de carga completa

Clave de la API: postgres-check-target-secondary-indexes

Esta evaluación previa a la migración valida si hay tablas con índices secundarios en el ámbito de la tarea de migración de carga completa. Se recomienda borrar los índices secundarios mientras dure la tarea de carga completa.

Para obtener más información, consulte Uso de una base de datos de PostgreSQL como destino para AWS Database Migration Service.

Valide que el modo LOB limitado solo se use cuando BatchApplyEnabled esté establecido en verdadero

Clave de la API: postgres-batch-apply-lob-mode

Cuando se incluyen columnas de LOB en la replicación, BatchApplyEnabled solo se puede utilizar en modo de LOB limitado. El uso de otras opciones del modo LOB provocará un error en el lote y AWS DMS procesará los cambios uno por uno. Se recomienda que mueva estas tablas a sus propias tareas y utilice en su lugar el modo de aplicación transaccional.

Para obtener más información sobre la configuración de BatchApplyEnabled, consulte How can I use the DMS batch apply feature to improve CDC replication performance?.

Validación para comprobar si DMS admite la versión de la base de datos de origen para la migración

Clave de la API: postgres-check-dbversion

Esta evaluación previa a la migración verifica si la versión de la base de datos de origen es compatible con. AWS DMS

Valide el parámetro logical_decoding_work_mem en la base de datos de origen

Clave de la API: postgres-check-for-logical-decoding-work-mem

Esta evaluación previa a la migración recomienda ajustar el parámetro logical_decoding_work_mem en la base de datos de origen. En una base de datos con una actividad de transacciones elevada, donde puede que haya transacciones de larga duración o muchas subtransacciones, esto puede provocar un aumento del consumo de la memoria de descodificación lógica y la necesidad de volcar contenido en el disco. Esto se traduce en una alta latencia del origen de DMS durante la replicación. En estos escenarios, puede que tenga que ajustar logical_decoding_work_mem. Este parámetro se admite en PostgreSQL versiones 13 y posteriores.

Validación para comprobar si la base de datos de origen tiene transacciones de larga duración

Clave de la API: postgres-check-longrunningtxn

Esta evaluación previa a la migración verifica si la base de datos de origen tiene transacciones de larga duración que hayan durado más de diez minutos. Es posible que no se pueda iniciar la tarea porque, de forma predeterminada, DMS comprueba si hay transacciones abiertas al iniciarla.

Valide el parámetro max_slot_wal_keep_size de la base de datos de origen

Clave de la API: postgres-check-maxslot-wal-keep-size

Esta evaluación previa a la migración verifica el valor configurado para max_slot_wal_keep_size. Cuando max_slot_wal_keep_size se establece en un valor no predeterminado, la tarea de DMS puede generar un error debido a la eliminación de los archivos WAL requeridos.

Compruebe si el parámetro postgres-check-maxwalsenders de la base de datos de origen está configurado para admitir los CDC.

Clave de la API: postgres-check-maxwalsenders

Esta evaluación previa a la migración verifica el valor configurado para max_wal_senders en la base de datos de origen. DMS requiere que max_wal_senders se establezca en un valor superior a 1 para admitir la captura de datos de cambio (CDC).

Compruebe si la base de datos de origen está configurada para PGLOGICAL

Clave de la API: postgres-check-pglogical

Esta evaluación previa a la migración verifica si el valor shared_preload_libraries está establecido en pglogical a fin de admitir PGLOGICAL para CDC. Tenga en cuenta que puede ignorar esta evaluación si tiene intención de usar la descodificación de prueba para la replicación lógica.

Validación para comprobar si la clave principal de la tabla de origen es del tipo de datos LOB

Clave de la API: postgres-check-pk-lob

Esta evaluación previa a la migración verifica si la clave principal de una tabla es del tipo de datos de objetos grandes (LOB). DMS no admite la replicación si la tabla de origen tiene una columna LOB como clave principal.

Validación para comprobar si la tabla de origen tiene una clave principal

Clave de la API: postgres-check-pk

Esta evaluación previa a la migración verifica si existen claves principales para las tablas que se usan en el ámbito de la tarea. DMS no admite la replicación de tablas sin claves principales, a menos que la identidad de la réplica esté establecida en full en la tabla de origen.

Validación para comprobar si hay transacciones preparadas en la base de datos de origen

Clave de la API: postgres-check-preparedtxn

Esta evaluación previa a la migración verifica si hay transacciones preparadas en la base de datos de origen. Puede que la creación de ranuras de replicación deje de responder si hay transacciones preparadas en la base de datos de origen.

Valide si wal_sender_timeout está establecido en un valor mínimo requerido para respaldar el DMS CDC

Clave de la API: postgres-check-walsenderstimeout

Esta evaluación previa a la migración verifica si el valor wal_sender_timeout está establecido en un mínimo de 10 000 milisegundos (10 segundos). Una tarea de DMS con CDC requiere un mínimo de 10 000 milisegundos (10 segundos) y se genera un error si el valor es inferior a 10 000.

Valide si wal_level está configurado como lógico en la base de datos fuente

Clave de la API: postgres-check-wallevel

Esta evaluación previa a la migración verifica si el valor wal_level está configurado como lógico. Para que la captura de datos de cambio de DMS funcione, este parámetro debe estar habilitado en la base de datos de origen.

Validación de si existe una clave principal y un índice único en el destino para la aplicación por lotes

Clave de la API: postgres-check-batch-apply-target-pk-ui-simultaneously

La aplicación por lotes solo se admite en las tablas con claves principales o índices únicos en la tabla de destino. Las tablas sin claves principales ni índices únicos generarán un error en el lote de forma simultánea y los cambios se procesarán uno por uno. Se recomienda que mueva estas tablas a sus propias tareas y que, en su lugar, utilice el modo de aplicación transaccional. Como alternativa, puede soltar una clave única o una clave principal en la tabla de destino y volver a crearla si va a migrar.

Para obtener más información, consulte Permitir que CDC utilice una base de datos PostgreSQL autogestionada como AWS DMS origen.

Cuando se encuentren objetos LOB, se recomienda usar el valor de LOB máximo

Clave de la API: postgres-check-limited-lob-size

El cálculo del tamaño de LOB para PostgreSQL es diferente al de otros motores. Asegúrese de establecer el tamaño de LOB máximo correcto en la configuración de la tarea para evitar el truncamiento de los datos.

Para obtener más información, consulte AWS Validación de datos DMS.

Validación de si la tabla tiene una clave principal o un índice único y su estado es correcto cuando la validación de DMS esté activada

Clave de la API: postgres-check-pk-validity

La validación de datos requiere que la tabla tenga una clave principal o índice único.

Para obtener más información, consulte AWS Validación de datos DMS.

Valide si AWS DMS el usuario tiene los privilegios necesarios para el objetivo

Clave de la API: postgres-check-target-privileges

El AWS DMS usuario debe tener al menos el rol de usuario db_owner en la base de datos de destino.

Para obtener más información, consulte Requisitos de seguridad cuando se utiliza una base de datos PostgreSQL como objetivo para AWS Database Migration Service.

Valida la disponibilidad de ranuras de replicación gratuitas para CDC

Clave de la API: postgres-check-replication-slots-count

Esta evaluación valida si hay ranuras de replicación disponibles para que CDC replique los cambios.

Verificación de los permisos de carga completa del usuario de DMS

Clave de la API: postgres-check-select-object-privileges

Esta evaluación valida si el usuario de DMS tiene los privilegios SELECT necesarios en las tablas requeridas para las operaciones de carga completa.

Comprobación de la regla de transformación Digits Randomize

Clave de la API: postgres-datamasking-digits-randomize

Esta evaluación valida si las columnas utilizadas en las asignaciones de tablas son compatibles con la regla de transformación Digits Randomize. Además, la evaluación comprueba si las columnas seleccionadas para la transformación forman parte de claves principales, restricciones únicas o claves externas, ya que la aplicación de transformaciones aleatorias con dígitos no garantiza la unicidad.

Comprobación de la regla de transformación Digits Mask

Clave de la API: postgres-datamasking-digits-mask

Esta evaluación valida si alguna columna utilizada en el mapeo de tablas no es compatible con la regla de transformación Digits Mask. Además, la evaluación comprueba si las columnas seleccionadas para la transformación forman parte de claves principales, restricciones únicas o claves externas, ya que la aplicación de transformaciones Digits Mask a dichas columnas puede provocar errores en las tarea DMS pues no se puede garantizar la unicidad.

Comprobación de la regla de transformación Hashing Mask

Clave de la API: postgres-datamasking-hash-mask

Esta evaluación valida si alguna columna utilizada en el mapeo de tablas no es compatible con la regla de transformación Hashing Mask. También comprueba si la longitud de la columna de origen supera los 64 caracteres. Lo ideal es que la longitud de la columna de destino sea superior a 64 caracteres para admitir el enmascaramiento por hash. Además, la evaluación comprueba si las columnas seleccionadas para la transformación forman parte de claves principales, restricciones únicas o claves externas, ya que la aplicación de transformaciones aleatorias con dígitos no garantiza la unicidad.

Comprobación de que la configuración de la tarea de validación de datos y la asignación al azar de dígitos de enmascaramiento de datos no estén activadas simultáneamente

Clave de la API: all-to-all-validation-with-datamasking-digits-randomize

Esta evaluación previa a la migración verifica que la configuración de validación de datos y la asignación al azar de dígitos de enmascaramiento de datos no estén habilitadas simultáneamente, ya que estas características son incompatibles.

Comprobación de que la configuración de la tarea de validación de datos y la máscara de hash de enmascaramiento de datos no estén activadas simultáneamente

Clave de la API: all-to-all-validation-with-datamasking-hash-mask

Esta evaluación previa a la migración verifica que la configuración de validación de datos y que la máscara de hash de enmascaramiento de datos no estén habilitadas simultáneamente, ya que estas características son incompatibles.

Comprobación de que la configuración de la tarea de validación de datos y la máscara de dígitos de enmascaramiento de datos no estén activadas simultáneamente

Clave de la API: all-to-all-validation-with-digit-mask

Esta evaluación previa a la migración verifica que la configuración de validación de datos y que la máscara de dígitos de enmascaramiento de datos no estén habilitadas simultáneamente, ya que estas características son incompatibles.

Valide que exista al menos un objeto seleccionado en la base de datos de origen

Clave de la API: all-check-source-selection-rules

Esta evaluación previa a la migración verifica que al menos un objeto especificado en las reglas de selección exista en la base de datos de origen, incluida la coincidencia de patrones para las reglas basadas en comodines.

Valide que la base de datos PostgreSQL de destino contenga las columnas generadas

Clave de la API: postgres-check-target-generated-cols

Esta evaluación previa a la migración valida si la base de datos PostgreSQL de destino contiene columnas generadas (incluidos los tipos STORED y VIRTUAL) que puedan requerir un tratamiento especial durante la migración. Las columnas generadas, que calculan sus valores a partir de otras columnas, necesitan una verificación específica para garantizar la compatibilidad con la versión de PostgreSQL de destino y la adecuada coherencia de los datos tras la migración.

Valide que existan vistas materializadas en migraciones homogéneas de PostgreSQL

Clave de la API: postgres-check-materialized-views

Al migrar entre bases de datos de PostgreSQL, no puede migrar las vistas materializadas. AWS DMS Las vistas materializadas se deben crear manualmente en la base de datos de destino después de la migración.

Para obtener más información, consulte Restricciones en el uso de una base de datos de PostgreSQL como origen de DMS.

Valide que REPLICA IDENTITY FULL entre en conflicto con el uso del complemento pglogical

Clave de la API: postgres-check-pglogical-replica-identity-full

Esta evaluación previa a la migración detecta tablas que utilizan REPLICA IDENTITY FULL. Si bien REPLICA IDENTITY FULL es compatible con el complemento test_coding, su uso con pglogical evitará que las actualizaciones se repliquen correctamente. Cambia la configuración de REPLICA IDENTITY a o cámbiate a un DEFAULT/INDEX complemento test_decoding para mantener REPLICA IDENTITY FULL

Para obtener más información, consulte Habilitación de la captura de datos de cambios (CDC) mediante replicación lógica.

Valide que las restricciones e índices secundarios (no principales) estén presentes en la base de datos fuente

Clave de la API: all-check-secondary-constraints

Esta evaluación previa a la migración verifica que las restricciones e índices secundarios (claves externas, restricciones de verificación, índices no agrupados) estén presentes en la base de datos de origen.

CHAR/VARCHAR Valide la compatibilidad de las columnas para la migración a Oracle

Clave de la API: postgres-to-oracle-check-varchar-columns

Esta evaluación previa a la migración verifica que las columnas de tipos de NCHAR/NVARCHAR2 datos utilizadas en la base de datos de destino sean compatibles con CHAR/VARCHAR las columnas de la base de datos de origen.

Valide que la configuración idle_in_transaction_session_timeout esté configurada en la base de datos de origen

Clave de la API: postgres-check-idle-in-transaction-session-timeout

Esta evaluación previa a la migración verifica que el parámetro no esté establecido en 0 en la base de datos de origen. idle_in_transaction_session_timeout

Valide eso AWS DMS el usuario tiene los roles necesarios para AWS-bases de datos PostgreSQL administradas

Clave de la API: postgres-check-rds-roles

Esta evaluación previa a la migración verifica que el AWS DMS usuario se haya configurado con todos los roles necesarios para las bases de datos PostgreSQL AWS administradas. La insuficiencia de funciones puede provocar errores en las tareas de migración.

Compruebe que el punto final de destino no sea una réplica de lectura

Clave de la API: all-check-target-read-replica

Esta evaluación previa a la migración verifica que el punto final de destino no esté configurado como una réplica de lectura. AWS DMS requiere acceso de escritura a la base de datos de destino y no puede replicarse en réplicas de solo lectura.

Verifique la versión de réplica leída de Aurora PostgreSQL de origen

Clave de la API: postgres-aurora-check-source-replica-role-cdc

Esta evaluación previa a la migración verifica que el punto final de origen utilice una réplica de lectura de Aurora PostgreSQL con la versión 16 o posterior. Las operaciones de los CDC requieren ranuras de replicación, que Aurora PostgreSQL no admite en los nodos de solo lectura de las versiones anteriores a la 16.

Para obtener más información, consulte Réplica de lectura como origen para PostgreSQL.

Verifique la versión original de PostgreSQL, lea la réplica

Clave de la API: postgres-check-source-replica-role-cdc

Esta evaluación previa a la migración verifica que el punto final de origen utilice una réplica de lectura de PostgreSQL con la versión 16 o posterior. Las operaciones de los CDC requieren ranuras de replicación, que PostgreSQL no admite en los nodos de solo lectura de las versiones anteriores a la 16.

Para obtener más información, consulte Réplica de lectura como origen para PostgreSQL.