Todos los productos
Search
Centro de documentos

Data Transmission Service:Migrar datos de una base de datos TiDB autogestionada a AnalyticDB for MySQL 3.0

Última actualización: Sep 04, 2026

Data Transmission Service (DTS) migra datos desde una base de datos TiDB autogestionada hacia un clúster de AnalyticDB for MySQL V3.0. DTS admite la migración de esquemas, la migración completa de datos y la migración incremental de datos.

Funcionamiento de la migración

La migración se ejecuta en hasta tres fases secuenciales:

  1. Migración de esquemas: DTS replica las definiciones de tablas al clúster de destino.

  2. Migración completa de datos: DTS lee todos los datos existentes de TiDB y los carga en AnalyticDB for MySQL V3.0.

  3. Migración incremental de datos (opcional): DTS lee los eventos de cambio desde un clúster de Kafka y los aplica al destino, lo que mantiene sincronizados el origen y el destino durante el traspaso.

Elija su ruta:

Requisitos previos

Antes de empezar:

Permisos obligatorios

Database

Required permissions

Base de datos TiDB

SELECT en los objetos a migrar, SHOW VIEW

Clúster de AnalyticDB for MySQL V3.0

Permisos de lectura y escritura en la base de datos de destino. Consulte Create a database account.

Facturación

Migration type

Instance configuration fee

Internet traffic fee

Migración de esquemas y migración completa de datos

Gratis

Se cobra solo cuando el Access Method del destino es Public IP Address. Consulte Descripción general de facturación.

Migración incremental de datos

De pago. Consulte Descripción general de facturación.

Configurar la recopilación de datos incrementales

Omita esta sección si solo necesita la migración de esquemas y la migración completa de datos.

La migración incremental de datos requiere que TiDB transmita eventos de cambio a un clúster de Kafka. Elija uno de los siguientes métodos según su versión de TiDB.

Elegir un método

Method

When to use

TiDB Binlog

Clústeres de TiDB que ya usan Pump y Drainer para la replicación de binlog

TiCDC

TiDB v4.0 y versiones posteriores; preferido para nuevos despliegues

Configurar parámetros de Kafka

Antes de conectarse a DTS, aumente los siguientes parámetros de Kafka. Sin estos cambios, el clúster de Kafka podría rechazar cargas útiles grandes de registro binario provenientes de TiDB.

Component

Parameter

Action

Broker de Kafka

message.max.bytes

Auméntelo para alojar mensajes de registro binario de TiDB

Broker de Kafka

replica.fetch.max.bytes

Auméntelo para igualar message.max.bytes

Consumidor de Kafka

fetch.message.max.bytes

Auméntelo para igualar message.max.bytes del broker

Preparar un clúster de Kafka

Utilice una de las siguientes opciones:

Importante

Despliegue el servidor de la base de datos TiDB, Pump (si usa TiDB Binlog), Drainer y el clúster de Kafka en la misma red interna para minimizar la latencia de red.

Una vez que el clúster de Kafka esté listo, cree un tema con exactly one partition. DTS lee únicamente desde la partición con ID 0. Las particiones adicionales provocan pérdida de datos.

Usar TiDB Binlog

  1. Despliegue Pump y Drainer en servidores dentro de la misma red interna que la base de datos TiDB. Consulte Despliegue de clúster de TiDB Binlog.

  2. Edite el archivo de configuración de Drainer para apuntar al clúster de Kafka. Consulte Guía de usuario del cliente consumidor de binlog.

  3. Compruebe que el servidor de TiDB pueda alcanzar el clúster de Kafka.

  4. Agregue los bloques CIDR de los servidores DTS a la lista de permitidos de la base de datos TiDB. Consulte Agregar los bloques CIDR de los servidores DTS.

Usar TiCDC

  1. Instale TiCDC mediante TiUP para agregar un nuevo nodo de TiCDC o escalar horizontalmente un nodo existente en el clúster de TiDB. Consulte Desplegar y mantener TiCDC.

  2. Cree un changefeed para replicar datos incrementales a Kafka. Utilice tiup cdc cli changefeed create como comando inicial. Consulte Replicar datos a Kafka.

  3. Compruebe que el servidor de TiDB pueda alcanzar el clúster de Kafka.

Límites

Revise estos límites antes de iniciar la tarea.

Base de datos de origen

  • El servidor de TiDB debe tener suficiente ancho de banda de salida. Un ancho de banda bajo reduce la velocidad de migración.

  • Las tablas a migrar deben tener restricciones PRIMARY KEY o UNIQUE con todos los campos únicos. Las tablas sin estas restricciones pueden generar registros duplicados en el destino.

  • Si cambia el nombre de tablas o columnas durante la migración, una sola tarea admite hasta 1,000 tablas. Para más de 1,000 tablas, divida la migración en varias tareas o migre toda la base de datos en una sola tarea.

  • Si desea migrar datos incrementales desde la base de datos TiDB de origen, debe desplegar un clúster de Kafka e instalar los componentes relacionados para que la base de datos TiDB recopile los datos incrementales.

  • Los índices de prefijo no se pueden migrar. Si la base de datos de origen contiene índices de prefijo, la tarea de migración puede fallar.

Migración incremental

  • DTS lee datos únicamente desde la partición con ID 0 del tema de Kafka. Configure el tema con exactamente una partición.

  • Después de crear una tarea de migración incremental, realice operaciones en la base de datos de origen o inserte datos de prueba rápidamente para actualizar la información de desplazamiento de la tarea. Retrasos prolongados antes del primer evento de datos pueden causar errores en la tarea.

Comportamiento del destino y de la tarea

  • Especifique una clave primaria personalizada en la base de datos de destino o configure Primary Key Column en el paso Configurations for Databases, Tables, and Columns. La falta de configuración de la clave primaria provoca errores en la migración de datos.

  • Si se realiza una copia de seguridad del clúster de AnalyticDB for MySQL V3.0 mientras se ejecuta la tarea de DTS, la tarea falla.

  • Si el uso de disco en los nodos de AnalyticDB for MySQL V3.0 supera el 80%, la tarea de migración se retrasa y se devuelven errores. Estime el espacio en disco necesario antes de comenzar.

  • La migración completa de datos aumenta la carga tanto en la base de datos de origen como en la de destino. Ejecute las migraciones fuera de horas pico, cuando la carga de CPU sea inferior al 30%.

  • La migración completa de datos utiliza operaciones INSERT simultáneas, lo que causa fragmentación en las tablas de destino. Una vez completada la migración completa, el tamaño del tablespace de destino será mayor que el del origen.

  • Si otros orígenes escriben en el destino durante la migración, puede producirse inconsistencia en los datos.

  • DTS utiliza la función ROUND(COLUMN,PRECISION) para recuperar valores FLOAT y DOUBLE. La precisión predeterminada es de 38 dígitos para FLOAT y 308 dígitos para DOUBLE. Compruebe que estos valores predeterminados cumplan con sus requisitos antes de comenzar.

  • Durante la migración de esquemas, DTS no admite la migración de vistas materializadas a la instancia de destino de AnalyticDB for MySQL. Para usar vistas materializadas, créelas manualmente en la instancia de destino una vez finalizada la migración.

  • DTS intenta reanudar automáticamente las tareas con errores durante un máximo de siete días. Antes de cambiar las cargas de trabajo al destino, detenga o libere cualquier tarea con errores, o ejecute la instrucción REVOKE para eliminar los permisos de escritura de las cuentas de DTS. De lo contrario, una tarea reanudada podría sobrescribir los datos de destino.

  • Si las instrucciones DDL fallan en el destino, la tarea de DTS continúa ejecutándose. Consulte las instrucciones DDL con errores en los registros de la tarea. Véase Ver registros de tareas.

  • Si una tarea de DTS falla, el soporte técnico de DTS intenta restaurarla en un plazo de 8 horas. Durante la restauración, la tarea puede reiniciarse y modificarse sus parámetros (no los de la base de datos). Para obtener una lista de los parámetros que pueden cambiar, consulte Modificar parámetros de instancia.

Nota
  • Si el destino es un clúster de AnalyticDB for MySQL, DTS solo admite la escritura de tipos de datos compatibles de forma nativa con AnalyticDB for MySQL. Esto incluye tipos de datos básicos y tipos de datos complejos como ARRAY, MAP y JSON. No se admiten tipos de datos como MULTIVALUE.

Operaciones SQL compatibles para la migración incremental

Operation type

Supported statements

DML

INSERT, UPDATE, DELETE. Las instrucciones UPDATE se convierten automáticamente a REPLACE INTO. Si UPDATE afecta a la clave primaria, se convierte en DELETE seguido de INSERT.

DDL

CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE, ADD COLUMN, DROP COLUMN

Asignaciones de tipos de datos

Para consultar la asignación completa entre los tipos de datos de TiDB y AnalyticDB for MySQL V3.0, véase Asignaciones de tipos de datos entre bases de datos heterogéneas.

Crear una tarea de migración

Paso 1: Ir a la página Data Migration

Utilice la consola de DTS o la consola de DMS.

Consola de DTS

  1. Inicie sesión en la consola de DTS.

  2. En el panel de navegación izquierdo, haga clic en Data Migration.

  3. En la esquina superior izquierda, seleccione la región donde residirá la instancia de migración.

Consola de DMS

Los pasos pueden variar según el modo y el diseño de la consola de DMS. Consulte Modo simple y Personalizar el diseño y estilo de la consola de DMS .
  1. Inicie sesión en la consola de DMS.

  2. En la barra de navegación superior, pase el puntero sobre Data + AI > DTS (DTS) > Data Migration.

  3. En la lista desplegable a la derecha de Data Migration Tasks, seleccione la región donde residirá la instancia de migración.

Paso 2: Configurar las bases de datos de origen y destino

  1. Haga clic en Create Task.

  2. Introduzca un Task Name. DTS genera un nombre automáticamente; especifique un nombre descriptivo para facilitar la identificación posterior de la tarea.

  3. Configure la base de datos de origen:

    Parameter

    Description

    Select Existing Connection

    Seleccione una instancia de base de datos registrada para completar automáticamente los parámetros siguientes, o déjelo en blanco e introduzca los detalles de conexión manualmente.

    Database Type

    Seleccione TiDB.

    Access Method

    Seleccione el método de acceso según dónde esté desplegado TiDB. Este ejemplo utiliza Self-managed Database on ECS. Para otros métodos de acceso, prepare primero el entorno necesario. Consulte Preparation overview.

    Instance Region

    La región donde reside la base de datos TiDB.

    ECS Instance ID

    El ID de la instancia de ECS que aloja TiDB.

    Port Number

    El puerto del servicio TiDB. Valor predeterminado: 4000.

    Database Account

    La cuenta de la base de datos TiDB.

    Database Password

    La contraseña de la cuenta de la base de datos.

    Migrate Incremental Data

    Seleccione Yes si desea realizar una migración incremental de datos y luego introduzca los detalles del clúster de Kafka en la sección Kafka cluster configuration.

  4. Configure la base de datos de destino:

    Parameter

    Description

    Select Existing Connection

    Seleccione una instancia registrada para completar automáticamente los parámetros siguientes, o déjelo en blanco e introduzca los detalles de conexión manualmente.

    Database Type

    Seleccione AnalyticDB for MySQL 3.0.

    Access Method

    Seleccione Alibaba Cloud Instance.

    Instance Region

    La región donde reside el clúster de destino.

    Instance ID

    El ID del clúster de destino de AnalyticDB for MySQL V3.0.

    Database Account

    La cuenta de la base de datos para el clúster de destino. Consulte Permisos obligatorios.

    Database Password

    La contraseña de la cuenta de la base de datos.

  5. Haga clic en Test Connectivity and Proceed. En el cuadro de diálogo CIDR Blocks of DTS Servers, haga clic en Test Connectivity.

    Los bloques CIDR de DTS deben agregarse a la configuración de seguridad tanto de la base de datos de origen como de la de destino. Consulte Agregar los bloques CIDR de los servidores DTS .

Paso 3: Configurar los objetos a migrar

En la página Configure Objects, establezca los siguientes parámetros:

Parameter

Description

Migration Types

Seleccione las fases de migración a ejecutar: Schema Migration, Full Data Migration y, opcionalmente, Incremental Data Migration. Si no selecciona Schema Migration, cree la base de datos y la tabla de destino antes de iniciar la tarea. Si no selecciona Incremental Data Migration, evite escribir en la base de datos de origen durante la migración para mantener la consistencia de los datos.

Merge Tables

Yes agrega una columna __dts_data_source a cada tabla de destino para registrar el origen de los datos. Todas las tablas de origen seleccionadas se fusionan en una sola tabla de destino. No (predeterminado) mantiene las tablas separadas. No ejecute operaciones DDL que cambien los esquemas de origen durante la migración; los cambios de esquema pueden causar inconsistencia en los datos o fallos en la tarea.

Processing Mode of Conflicting Tables

Precheck and Report Errors: falla la comprobación previa si el origen y el destino tienen tablas con el mismo nombre. Utilice la asignación de nombres de objetos para cambiar el nombre de las tablas en conflicto antes de comenzar. Ignore Errors and Proceed: omite la comprobación previa. Durante la migración completa, DTS conserva los registros de destino existentes para claves primarias en conflicto. Durante la migración incremental, DTS los sobrescribe. Si los esquemas difieren entre el origen y el destino, solo se migran las columnas coincidentes o la tarea puede fallar.

Capitalization of Object Names in Destination Instance

Controla el uso de mayúsculas y minúsculas en los nombres de bases de datos, tablas y columnas en el destino. Valor predeterminado: DTS default policy. Consulte Especificar el uso de mayúsculas en nombres de objetos en la instancia de destino.

Source Objects

Seleccione las tablas o bases de datos a migrar y luego haga clic en el icono de flecha para moverlas a Selected Objects.

Selected Objects

Haga clic derecho en un objeto para cambiarle el nombre o agregar condiciones de filtro WHERE. Haga clic en Batch Edit para cambiar el nombre de varios objetos a la vez. Cambiar el nombre de un objeto puede provocar que los objetos dependientes fallen en la migración.

Haga clic en Next: Advanced Settings.

Paso 4: Configurar ajustes avanzados

Parameter

Description

Retry Time for Failed Connections

Tiempo durante el cual DTS reintenta tras un fallo de conexión. Rango válido: 10–1,440 minutos. Valor predeterminado: 720 minutos. Establézcalo en 30 minutos como mínimo. Si varias tareas comparten la misma base de datos de origen o destino, se aplica el valor establecido más recientemente. DTS cobra por la instancia durante los periodos de reintento.

Retry Time for Other Issues

Tiempo durante el cual DTS reintenta tras fallos de DDL o DML. Rango válido: 1–1,440 minutos. Valor predeterminado: 10 minutos. Establézcalo en 10 minutos como mínimo. Debe ser menor que Retry Time for Failed Connections.

Enable Throttling for Full Data Migration

Limita el uso de recursos de lectura/escritura durante la migración completa. Configure QPS (queries per second) to the source database, RPS of Full Data Migration y Data migration speed for full migration (MB/s). Disponible solo cuando se selecciona Full Data Migration.

Enable Throttling for Incremental Data Migration

Limita el uso de recursos durante la migración incremental. Configure RPS of Incremental Data Migration y Data migration speed for incremental migration (MB/s). Disponible solo cuando se selecciona Incremental Data Migration.

Environment Tag

Una etiqueta opcional para identificar la instancia de DTS.

Configure ETL

Seleccione Yes para habilitar extracción, transformación y carga (ETL) e introducir instrucciones de procesamiento de datos. Consulte Configurar ETL en una tarea de migración o sincronización de datos. Seleccione No para omitirlo.

Monitoring and Alerting

Seleccione Yes para recibir notificaciones cuando la tarea falle o la latencia de migración supere un umbral. Configure umbrales de alerta y contactos. Consulte Configurar monitoreo y alertas.

Paso 5: Configurar la verificación de datos (opcional)

Haga clic en Next Step: Data Verification para configurar una tarea de verificación de datos. Consulte Configurar una tarea de verificación de datos.

Paso 6: Configurar campos de bases de datos y tablas (opcional)

Haga clic en Next: Configure Database and Table Fields para establecer el Type, Primary Key Column, Distribution Key, Partition Key, Partitioning Rules y Partition Lifecycle para las tablas de destino.

Este paso está disponible solo si se selecciona Schema Migration . Establezca Definition Status en All para ver y editar todas las tablas. Para formar una clave primaria compuesta, especifique varias columnas en Primary Key Column y designe una o más como Distribution Key y Partition Key . Consulte CREATE TABLE .

Paso 7: Ejecutar la comprobación previa

Haga clic en Next: Save Task Settings and Precheck.

Para ver los parámetros de API de esta configuración de tarea, pase el cursor sobre el botón y haga clic en Preview OpenAPI parameters antes de continuar.

DTS ejecuta una comprobación previa antes de iniciar la migración. Si la comprobación previa falla:

  • Haga clic en View Details junto al elemento fallido, resuelva el problema y haga clic en Precheck Again.

  • Para elementos de alerta que puedan ignorarse de forma segura, haga clic en Confirm Alert Details > Ignore > OK y luego haga clic en Precheck Again. Ignorar alertas puede resultar en inconsistencia de datos.

Paso 8: Adquirir una instancia e iniciar la tarea

  1. Espere hasta que Success Rate alcance el 100% y luego haga clic en Next: Purchase Instance.

  2. En la página Purchase Instance, configure lo siguiente:

    Parameter

    Description

    Resource Group

    El resource group para la instancia de migración. Valor predeterminado: default resource group. Consulte ¿Qué es Resource Management?.

    Instance Class

    La clase de instancia determina la velocidad de migración. Consulte Clases de instancias de migración de datos.

  3. Lea y acepte los Data Transmission Service (Pay-as-you-go) Service Terms.

  4. Haga clic en Buy and Start y luego haga clic en OK en el cuadro de diálogo de confirmación.

Monitoree el progreso de la tarea en la página Data Migration.

  • Las tareas sin migración incremental se detienen automáticamente al finalizar. El estado muestra Completed.

  • Las tareas con migración incremental se ejecutan continuamente. El estado muestra Running. Detenga la tarea manualmente después del traspaso.

Configuración del clúster de Kafka

Cuando Migrate Incremental Data está configurado en Yes, configure el clúster de Kafka con los siguientes parámetros:

Parameter

Description

Kafka Cluster Type

La ubicación de despliegue del clúster de Kafka. Este ejemplo utiliza Self-managed Database on ECS. Si selecciona Express Connect, VPN Gateway, or Smart Access Gateway, seleccione también una VPC en Connected VPC y especifique Domain Name or IP.

Kafka Data Source Component

Seleccione Use the default binlog format of the TiDB database o Use the TiCDC Canal-JSON format según su configuración.

ECS Instance ID

El ID de la instancia de ECS que aloja el clúster de Kafka.

Port Number

El puerto del servicio Kafka.

Kafka Cluster Account

El nombre de usuario de Kafka. Déjelo en blanco si la autenticación está deshabilitada.

Kafka Cluster Password

La contraseña de Kafka. Déjela en blanco si la autenticación está deshabilitada.

Kafka Version

La versión del clúster de Kafka. Seleccione 1.0 si la versión es 1.0 o posterior.

Encryption

Seleccione Non-encrypted o SCRAM-SHA-256 según sus requisitos de seguridad.

Topic

El tema de Kafka que recibe los datos incrementales.

Pasos siguientes