Uso de la base de datos IBM Db2 para Linux, Unix, Windows y Amazon RDS (Db2 LUW) como fuente para AWS DMS - AWS Database Migration Service

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.

Uso de la base de datos IBM Db2 para Linux, Unix, Windows y Amazon RDS (Db2 LUW) como fuente para AWS DMS

Puede migrar datos de una base de datos IBM Db2 para Linux, Unix, Windows y Amazon RDS (Db2 LUW) a cualquier base de datos de destino compatible mediante (). AWS Database Migration Service AWS DMS

Para obtener información sobre las versiones de Db2 en Linux, Unix, Windows y RDS que son compatibles como fuente, consulte. AWS DMS Fuentes de AWS DMS

Puede utilizar la Capa de conexión segura (SSL) para cifrar las conexiones entre el punto de enlace de Db2 LUW y la instancia de replicación. Para obtener más información sobre cómo utilizar SSL con un punto de enlace de Db2 LUW, consulte Uso de SSL con AWS Database Migration Service.

Requisitos previos para utilizar Db2 LUW como fuente de AWS DMS

Los siguientes requisitos previos son necesarios para poder utilizar una base de datos Db2 LUW como origen.

Para habilitar la replicación continua, también llamada captura de datos de cambios (CDC), haga lo siguiente:

  • Configure la base de datos para que sea recuperable, lo que AWS DMS requiere capturar los cambios. Una base de datos es recuperable si uno o ambos parámetros de configuración de la base de datos, LOGARCHMETH1 y LOGARCHMETH2, se establecen en ON.

    Si su base de datos es recuperable, AWS DMS puede acceder al Db2 si es necesario. ARCHIVE LOG

  • Asegúrese de que los registros de transacciones del DB2 estén disponibles, con un período de retención suficiente para procesarlos. AWS DMS

  • DB2 requiere una autorización SYSADM o DBADM para extraer los registros de transacciones. Conceda a la cuenta de usuario los siguientes permisos:

    • SYSADM o DBADM

    • DATAACCESS

    nota

    Para las tareas exclusivas de carga completa, la cuenta de usuario de DMS necesita el permiso DATAACCESS.

  • Cuando utilice la versión 9.7 de IBM DB2 para LUW como origen, establezca el atributo de conexión adicional (ECA), CurrentLSN de la siguiente manera:

    CurrentLSN=LSN donde LSN especifica un número de secuencia de registro (LSN) donde desea que comience la replicación. O CurrentLSN=scan.

Limitaciones al utilizar Db2 LUW como fuente de AWS DMS

AWS DMS no admite bases de datos agrupadas. Sin embargo, puede definir una base de datos Db2 LUW independiente para cada uno de los puntos de enlace de un clúster. Por ejemplo, puede crear una tarea de migración de carga completa con cualquiera de los nodos del clúster y, a continuación, crear tareas independientes de cada nodo.

AWS DMS no admite el tipo de BOOLEAN datos de la base de datos LUW Db2 de origen.

Al utilizar la replicación continua (CDC), se aplican las siguientes restricciones:

  • Cuando se trunca una tabla con varias particiones, el número de eventos DDL que se muestran en la AWS DMS consola es igual al número de particiones. Esto se debe a que Db2 LUW registra un DDL individual para cada partición.

  • Las siguientes acciones de DDL no se admiten en las tablas con particiones:

    • ALTER TABLE ADD PARTITION

    • ALTER TABLE DETACH PARTITION

    • ALTER TABLE ATTACH PARTITION

  • AWS DMS no admite una migración de replicación continua desde una instancia en espera de recuperación ante desastres (HADR) de alta disponibilidad (HADR) de DB2. No se puede acceder al modo de espera.

  • No se admite el tipo de datos DECFLOAT. Por lo tanto, los cambios en las columnas DECFLOAT se omiten durante la replicación continua.

  • No se admite la instrucción RENAME COLUMN.

  • Al actualizar las tablas de agrupamiento multidimensional (MDC), cada actualización se muestra en la AWS DMS consola como INSERT + DELETE.

  • Cuando la opción de tarea Include LOB columns in replication (Incluir columnas LOB en la replicación) no está habilitada, toda tabla que tenga columnas LOB se suspende durante la replicación continua.

  • En las versiones 10.5 y superiores de Db2 LUW, se omiten las columnas de cadenas de longitud variable con datos almacenados. out-of-row Esta limitación solo se aplica a las tablas creadas con un tamaño de fila ampliado para columnas con tipos de datos como VARCHAR y VARGRAPHIC. Para evitar esta limitación, mueva la tabla a un espacio de tabla con un tamaño de página superior. Para obtener más información, consulte Qué puedo hacer si quiero cambiar el tamaño de página de los espacios de tablas de DB2.

  • Para una replicación continua, DMS no admite la migración de los datos cargados en nivel de página por la utilidad DB2 LOAD. En su lugar, utilice la utilidad IMPORT, que utiliza inserciones SQL. Para obtener más información, consulte las diferencias entre las utilidades de importación y carga.

  • Mientras se ejecuta una tarea de replicación, DMS captura DDL de CREATE TABLE solo si las tablas se crearon con el atributo DATA CAPTURE CHANGE.

  • El DMS presenta las siguientes limitaciones al utilizar la función de partición de bases de datos (DPF) de Db2:

    • El DMS no puede coordinar las transacciones entre los nodos de Db2 en un entorno DPF. Esto se debe a las limitaciones de la interfaz API DB2READLOG de IBM. En el DPF, las transacciones pueden abarcar varios nodos de Db2, según la forma en que DB2 particione los datos. Como resultado, su solución de DMS debe capturar las transacciones de cada nodo de Db2 de forma independiente.

    • El DMS puede capturar las transacciones locales de cada nodo de Db2 del clúster de DPF connectNode configurándolo en varios puntos finales de origen del DMS. 1 Esta configuración corresponde a los números de nodos lógicos definidos en el archivo de configuración del servidor DB2. db2nodes.cfg

    • Las transacciones locales en los nodos Db2 individuales pueden formar parte de una transacción global más grande. El DMS aplica cada transacción local de forma independiente en el destino, sin coordinación con las transacciones de otros nodos de Db2. Este procesamiento independiente puede provocar complicaciones, especialmente cuando las filas se mueven entre particiones.

    • Cuando el DMS se replica desde varios nodos de Db2, no se garantiza el orden correcto de las operaciones en el destino, ya que el DMS aplica las operaciones de forma independiente para cada nodo de Db2. Debe asegurarse de que la captura de transacciones locales independientemente de cada nodo de Db2 funcione para su caso de uso específico.

    • Al migrar desde un entorno DPF, recomendamos ejecutar primero una tarea de carga completa sin eventos en caché y, a continuación, ejecutar tareas exclusivas de CDC. Se recomienda ejecutar una tarea por nodo de Db2, empezando por la marca de tiempo de inicio a plena carga o el LRI (identificador de registro) que haya establecido mediante la configuración del punto final. StartFromContext Para obtener información sobre cómo determinar el punto de inicio de la replicación, consulte Búsqueda del valor LSN o LRI para el inicio de la replicación en la documentación de IBM Support.

  • Para la replicación continua (CDC), si planea iniciar la replicación desde una marca temporal específica, debe establecer el atributo de conexión StartFromContext en la marca temporal requerida.

  • Actualmente, DMS no admite la característica pureScale de Db2, una extensión de DB2 LUW que puede utilizar para escalar la solución de base de datos.

  • AWS DMS no es compatible con CDC cuando utiliza Db2 para Amazon RDS como fuente.

Configuración de punto final cuando se utiliza Db2 LUW como fuente de AWS DMS

Puede utilizar la configuración de punto de conexión para configurar la base de datos de origen de Db2 LUW de forma similar al uso de atributos de conexión adicionales. Los ajustes se especifican al crear el punto final de origen mediante la AWS DMS consola o mediante el create-endpoint comando del AWS CLI, con la sintaxis --ibm-db2-settings '{"EndpointSetting": "value", ...}' JSON.

La siguiente tabla muestra la configuración de punto de conexión que puede utilizar con Db2 LUW como origen.

Nombre Descripción

CurrentLSN

Para la replicación continua de cambios (CDC), utilice CurrentLSN para especificar un número de secuencia de registro (LSN) donde desea que comience la replicación.

MaxKBytesPerRead

Número máximo de bytes por lectura, como valor NUMBER. El valor predeterminado es 64 KB.

SetDataCaptureChanges

Habilita la replicación continua (CDC) como valor booleano. El valor predeterminado es true.

StartFromContext

Para la replicación continua (CDC), utilice StartFromContext para especificar un límite inferior de un registro desde donde desea que comience la replicación. StartFromContext acepta diferentes formas de valores. Los valores válidos son:

  • timestamp (UTC). Por ejemplo:

    '{"StartFromContext": "timestamp:2021-09-21T13:00:00"}'
  • NOW

    Para IBM DB2 LUW versión 10.5 y superior, NOW combinado con CurrentLSN: análisis, inicia la tarea desde la versión de LSO más reciente. Por ejemplo:

    '{"CurrentLSN": "scan", "StartFromContext": "NOW"}'
  • Un valor LRI específico. Por ejemplo:

    '{"StartFromContext": "0100000000000022CC000000000004FB13"}'

Para determinar el rango de LRI/LSN de un archivo de registro, ejecute el comando db2flsn como se muestra en el siguiente ejemplo.

db2flsn -db SAMPLE -lrirange 2

El resultado de ese ejemplo es similar al siguiente.

S0000002.LOG: has LRI range 00000000000000010000000000002254000000000004F9A6 to 000000000000000100000000000022CC000000000004FB13

En ese resultado, el archivo de registro es S0000002.LOG y el valor de StartFromContextLRI son los 34 bytes que se encuentran al final del rango.

0100000000000022CC000000000004FB13

Tipos de datos de origen para IBM Db2 LUW

La migración de datos que utiliza Db2 LUW como fuente es AWS DMS compatible con la mayoría de los tipos de datos LUW de Db2. La siguiente tabla muestra los tipos de datos de origen LUW de Db2 que se admiten cuando se utilizan AWS DMS y el mapeo predeterminado a partir de los tipos de datos. AWS DMS Para obtener más información sobre los tipos de datos de Db2 LUW, consulte la documentación sobre Db2 LUW.

Para obtener más información sobre cómo ver el tipo de datos que se asigna en el destino, consulte la sección del punto de enlace de destino que esté utilizando.

Para obtener información adicional sobre AWS DMS los tipos de datos, consulte. Tipos de datos de AWS Database Migration Service

Tipos de datos de Db2 LUW

AWS DMS tipos de datos

INTEGER

INT4

SMALLINT

INT2

BIGINT

INT8

DECIMAL (p,s)

NUMERIC (p,s)

FLOAT

REAL8

DOUBLE

REAL8

REAL

REAL4

DECFLOAT (p)

Si la precisión es 16, entonces REAL8; si la precisión es 34, entonces STRING

GRAPHIC (n)

WSTRING, para cadenas de gráficos de longitud fija de caracteres de dos bytes con una longitud mayor que 0 y menor o igual a 127

VARGRAPHIC (n)

WSTRING, para cadenas de gráficos de longitud variable con una longitud mayor que 0 y menor o igual a 16.352 caracteres de dos bytes

LONG VARGRAPHIC (n)

CLOB, para cadenas de gráficos de longitud variable con una longitud mayor que 0 y menor o igual a 16.352 caracteres de dos bytes

CHARACTER (n)

STRING, para cadenas de longitud fija de caracteres de dos bytes con una longitud mayor que 0 y menor o igual a 255

VARCHAR (n)

STRING, para cadenas de longitud variable de caracteres de dos bytes con una longitud mayor que 0 y menor o igual a 32.704

LONG VARCHAR (n)

CLOB, para cadenas de longitud variable de caracteres de dos bytes con una longitud mayor que 0 y menor o igual a 32.704

CHAR (n) FOR BIT DATA

BYTES

VARCHAR (n) FOR BIT DATA

BYTES

LONG VARCHAR FOR BIT DATA

BYTES

FECHA

FECHA

TIME

TIME

TIMESTAMP

DATETIME

BLOB (n)

BLOB

La longitud máxima es de 2 147 483 647 bytes

CLOB (n)

CLOB

La longitud máxima es de 2 147 483 647 bytes

DBCLOB (n)

CLOB

La longitud máxima es 1 073 741 824 de caracteres de dos bytes

XML

CLOB