Todos los productos
Search
Centro de documentos

ApsaraDB RDS:Use native replication instances

Última actualización: Sep 15, 2026

La replicación nativa de ApsaraDB RDS for MySQL le permite replicar datos desde una base de datos MySQL autogestionada directamente hacia una instancia de RDS mediante la replicación estándar de MySQL. No requiere herramientas de migración adicionales ni servicios de transferencia de datos de pago.

Escenarios de uso

  • Migración a la nube con un tiempo de inactividad mínimo: importe una copia de seguridad completa de su base de datos autogestionada. Después, mantenga sincronizada la instancia de RDS mediante replicación hasta que esté listo para cambiar la aplicación.

  • Sincronización híbrida de datos: mantenga sincronizados de forma continua su entorno MySQL local y la instancia de RDS en la nube. Este método es adecuado para migraciones por fases o configuraciones de recuperación ante desastres.

  • Replicación multinube: replique los datos desde una base de datos MySQL alojada en otro proveedor de nube hacia una instancia de ApsaraDB RDS for MySQL.

Requisitos previos

Antes de empezar, asegúrese de lo siguiente:

  • Versión de la base de datos: MySQL 5.7 (versión secundaria 20240930 o posterior) o MySQL 8.0 (versión secundaria 20250531 o posterior).

  • Serie del producto: Basic Edition.

  • Método de facturación: suscripción o pay-as-you-go.

  • Región: China (Shanghai), China (Beijing), China (Shenzhen), China (Guangzhou) o China (Chengdu).

La replicación nativa solo está disponible actualmente en las regiones mencionadas. Si necesita esta función en otras regiones, envíe un ticket .

Para usar un native replication instance serverless, primero cree una instancia pay-as-you-go, habilite la replicación nativa y luego change the billing method to Serverless.

Facturación

  • Instancia nueva con replicación nativa habilitada: se aplican las instance fees estándar. La función de replicación nativa no genera cargos adicionales.

  • Actualización de una instancia existente: sin cargos adicionales.

  • Importación de datos mediante Object Storage Service (OSS): se aplican las OSS storage fees durante el tiempo que el archivo de copia de seguridad permanezca almacenado en OSS.

Limitaciones

Limitaciones funcionales

  • La instancia opera en modo read-only mientras la replicación nativa está activa.

  • No se admiten las actualizaciones de versión principal.

  • No se admite la replicación entre versiones principales. La base de datos MySQL autogestionada y la instancia de replicación nativa de RDS deben ejecutar la misma versión principal (por ejemplo, ambas en MySQL 8.0).

  • No se admite la actualización de la serie del producto (por ejemplo, de Basic Edition a High-availability Edition o Cluster Edition).

  • No se admite el cambio de VPC.

  • No se admite la recuperación de bases de datos ni de tablas.

  • Al actualizar una instancia existente a una instancia de replicación nativa, puede producirse una desconexión transitoria de unos 30 segundos. Ejecute esta operación fuera del horario de mayor actividad y asegúrese de que su aplicación cuente con un mecanismo de reconexión.

Limitaciones de permisos

Alcance de la cuenta privilegiada

Se otorgan algunos privilegios SUPER de replicación nativa a la cuenta privilegiada de la instancia de RDS. Solo esta cuenta puede ejecutar comandos de replicación nativa como CHANGE MASTER TO (MySQL 5.7) o CHANGE REPLICATION SOURCE TO (MySQL 8.0).

Lista de permitidos de permisos de replicación

Cuando la replicación nativa aplica eventos del registro binario desde un origen externo, primero comprueba los permisos. Se rechaza cualquier operación que requiera permisos fuera de la siguiente lista, lo cual interrumpe la replicación:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE,
DROP, RELOAD, PROCESS, REFERENCES, INDEX,
ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES,
LOCK TABLES, EXECUTE, REPLICATION SLAVE,
REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,
CREATE ROUTINE, ALTER ROUTINE, CREATE USER,
EVENT, TRIGGER ON *.* TO XXX;

Limitaciones de las bases de datos del sistema

Durante la replicación se ignoran todas las operaciones sobre las bases de datos del sistema. Estas incluyen mysql, sys, information_schema, performance_schema y __recyclebin__.

Las operaciones que modifican indirectamente las bases de datos del sistema, como CREATE USER y GRANT , no se ignoran. Estas operaciones deben cumplir con la lista de permitidos de permisos de replicación. Las sentencias que excedan los permisos otorgados, como GRANT SUPER ON *.* TO xxx; , interrumpirán la replicación.

Limitaciones de GTID

ApsaraDB RDS for MySQL requiere que el modo Global Transaction Identifier (GTID) esté habilitado y no admite deshabilitarlo. Para replicar desde una base de datos MySQL externa, el origen también debe tener GTID habilitado.

Antes de configurar la replicación, ejecute lo siguiente en la base de datos de origen para comprobar el estado de GTID:

SHOW VARIABLES LIKE 'gtid_mode';

Si GTID no está habilitado, ejecute:

SET GLOBAL gtid_mode = ON;

Comportamiento durante el mantenimiento

Durante las operaciones de mantenimiento, como una migración entre servidores o una actualización de versión secundaria, se revocan temporalmente los permisos para comandos de replicación nativa y para modificar parámetros. El proceso de replicación no se ve afectado. Los permisos se restauran automáticamente cuando finaliza el mantenimiento.

Permisos de replicación nativa

Las cuentas privilegiadas en las instancias de replicación nativa cuentan con permisos adicionales que no están disponibles en las instancias de RDS estándar.

Comandos de replicación

Comando (MySQL 5.7)

Comando (MySQL 8.0)

Descripción

CHANGE MASTER TO

CHANGE REPLICATION SOURCE TO

Configura el origen y la posición inicial de la replicación. Consulte la documentación de MySQL 5.7.

START SLAVE

START REPLICA

Inicia el proceso de replicación.

STOP SLAVE

STOP REPLICA

Detiene el proceso de replicación.

RESET SLAVE

RESET REPLICA

Restablece el estado de la réplica para reiniciar la replicación desde el origen.

Modificación de parámetros

Las cuentas privilegiadas también pueden modificar los siguientes parámetros de ejecución:

  • `SET GLOBAL read_only = ON/OFF;`: alterna la instancia entre el modo de solo lectura (ON) y el modo de lectura y escritura (OFF).

  • SET SESSION sql_log_bin = ON/OFF;: controla si las sentencias SQL de la sesión actual se registran en el registro binario.

  • SET SESSION GTID_NEXT = "<gtid_value>";: establece el valor de GTID para la siguiente transacción.

Paso 1: Habilitar la replicación nativa

Habilitar la replicación nativa en una instancia nueva

Cuando creating a new ApsaraDB RDS for MySQL instance en la página Standard Create, desplácese hasta la parte inferior, expanda More y active el interruptor Native Replication.

Este interruptor solo aparece cuando la configuración de la instancia cumple con los prerequisites.

image

Habilitar la replicación nativa en una instancia existente

Importante

Actualizar una instancia existente provoca una desconexión transitoria de unos 30 segundos. Ejecute esta operación fuera del horario de mayor actividad y asegúrese de que su aplicación cuente con un mecanismo de reconexión.

  1. Vaya a la página RDS Instances, seleccione una región y haga clic en el ID de la instancia de destino.

  2. En el panel de navegación izquierdo, haga clic en Native Replication y luego haga clic en Enable.

  3. Revise la información del cuadro de diálogo y haga clic en OK.

Si la cuenta de servicio oficial de ApsaraDB RDS aún no tiene permiso para acceder a su OSS ni para crear y adjuntar interfaces de red elásticas (ENI), seleccione las casillas correspondientes en el cuadro de diálogo para otorgar estos permisos.

Paso 2: Configurar la conectividad de red

Antes de importar los datos, asegúrese de que la base de datos MySQL autogestionada pueda comunicarse por red con la instancia de RDS.

Escenario

Configuración

Cargos

MySQL autogestionado en ECS dentro de la misma VPC

La conectividad de red está disponible de forma predeterminada. Configure el security group de ECS para permitir el tráfico entrante en el puerto 3306 desde la IP de la instancia de RDS. Para obtener la IP de la instancia de RDS, conéctese a la instancia y ejecute SHOW VARIABLES LIKE 'report_host';.

Ninguna

Comunicación entre distintas VPC o regiones en Alibaba Cloud

Use un VPC peering connection o un Cloud Enterprise Network (CEN).

Se aplican las VPC peering connection fees. Las instancias de CEN son gratuitas, pero pueden generarse cargos por transferencia de datos y ancho de banda.

De un centro de datos local a la nube

Utilice Use a VPN Gateway or a leased line para conectar su centro de datos a la VPC.

Los cargos varían según el método. Consulte la documentación oficial para más detalles.

De otro proveedor de nube a ApsaraDB RDS

Use una VPN o una línea dedicada para establecer una conexión de red entre nubes.

Los cargos varían según el método. Consulte la documentación oficial para más detalles.

Red pública (no recomendado)

Las instancias de replicación nativa de ApsaraDB RDS admiten public network access. No se recomienda este método debido a los riesgos de seguridad.

Los cargos varían según el método.

Para consultar la referencia completa, consulte Connections and networking.

Paso 3: Importar los datos completos y configurar la replicación

Importe una copia de seguridad completa de su base de datos autogestionada en RDS y configure la replicación incremental para mantener sincronizadas ambas bases de datos.

Instalar Percona XtraBackup y respaldar la base de datos de origen

Instale Percona XtraBackup en el host de su base de datos autogestionada.

Instalación en CentOS

Para MySQL 5.7:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

Para MySQL 8.0:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

Instalación en Ubuntu

Para MySQL 5.7:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

Para MySQL 8.0:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

XtraBackup en Ubuntu no incluye qpress. Instálelo por separado:

sudo apt-get install -y qpress

Crear la copia de seguridad

Los siguientes comandos corresponden a bases de datos que usan principalmente el motor InnoDB. Si su base de datos contiene tablas MyISAM, utilice el comando innobackupex en su lugar.

Se admiten tres métodos de compresión. Elija uno:

Método 1: Compresión qpress predeterminada

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>.xb

Método 2: Compresión QuickLZ

Requiere la versión 8.0.34-29 de XtraBackup o una anterior. Consulte la documentación de Percona XtraBackup para más detalles.

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>_qp.xb

Método 3: Compresión Zstandard (zstd)

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  | zstd -q - > ./<backup_file_name>.xb.zstd

Importar la copia de seguridad y configurar la replicación

Hay dos métodos de importación disponibles. Si puede cargar el archivo de copia de seguridad en OSS, use el método 1. Si su entorno tiene restricciones y resulta preferible la transmisión directa, use el método 2.

Método 1: Importar un archivo de copia de seguridad desde OSS

Cargar la copia de seguridad en un bucket de OSS

El bucket de OSS debe estar en la misma región que la instancia de RDS.

Instale ossutil:

yum install -y unzip
sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash
ossutil config

Cargue el archivo de copia de seguridad:

ossutil -e <OSS_Endpoint> -i <your_AccessKeyId> -k <your_AccessKeySecret> cp <backup_file_name> oss://<bucket_name>/

Importar la copia de seguridad en RDS

  1. Vaya a la página RDS Instances, seleccione una región y haga clic en el ID de la instancia.

  2. En el panel de navegación izquierdo, haga clic en Native Replication.

  3. Haga clic en Import Full Data, configure los parámetros y haga clic en OK.

Categoría Parámetro Descripción
Método de carga de la copia de seguridad (obligatorio) MySQL version Se muestra automáticamente como 5.7 o 8.0. No requiere configuración.
Import method Seleccione Import from OSS.
OSS bucket Seleccione el bucket de OSS que contiene su archivo de copia de seguridad.
OSS file name Seleccione el archivo de copia de seguridad. Si el archivo está en un subdirectorio, introduzca la ruta completa. Formatos compatibles: .xb (xbstream), _qp.xb (QuickLZ), .xb.zst (zstd).
Configuración automática de la replicación (opcional) Auto replication building Actívelo para configurar automáticamente la replicación desde la base de datos de origen después de la importación. Si lo deja desactivado, configure la replicación manually tras la importación.
Source IP address Dirección IP de la base de datos autogestionada de origen.
Source port Puerto de la base de datos autogestionada de origen.
Source account Cuenta de la base de datos de origen. Debe contar con los permisos REPLICATION CLIENT y REPLICATION SLAVE.
Account password Contraseña de la cuenta de origen.

Método 2: Transmitir la copia de seguridad directamente a RDS

Instalar la herramienta backup-helper e iniciar la transmisión de la copia de seguridad

# Install the backup-helper tool
wget -O backup-helper https://mysql-backup-helper.oss-cn-beijing.aliyuncs.com/v1.0.0-alpha/backup-helper && chmod +x backup-helper

# Start the backup stream (requires MySQL and the matching XtraBackup version to be installed)
./backup-helper --backup --mode=stream --host=<MySQL_IP> --port=<MySQL_port> --user=<MySQL_account> --password=<MySQL_password>

Importar la transmisión en RDS

  1. Inicie sesión en la consola de ApsaraDB RDS, seleccione una región y haga clic en el ID de la instancia.

  2. En el panel de navegación izquierdo, haga clic en Native Replication.

  3. Haga clic en Import Full Data, configure los parámetros y haga clic en OK.

Categoría Parámetro Descripción
Método de carga de la copia de seguridad (obligatorio) MySQL version Se muestra automáticamente como 5.7 o 8.0. No requiere configuración.
Import method Seleccione Direct Stream Backup.
Source backup IP address Dirección IP utilizada para la transmisión de la copia de seguridad.
Source backup port Puerto utilizado para la transmisión de la copia de seguridad. Valor predeterminado: 9999.
Configuración automática de la replicación (opcional) Auto replication building Actívelo para configurar automáticamente la replicación desde la base de datos de origen después de la importación. Si lo deja desactivado, configure la replicación manually tras la importación.
Source IP address Dirección IP de la base de datos autogestionada de origen.
Source port Puerto de la base de datos autogestionada de origen.
Source account Cuenta de la base de datos de origen. Debe contar con los permisos REPLICATION CLIENT y REPLICATION SLAVE.
Account password Contraseña de la cuenta de origen.

Configurar la replicación manualmente (si es necesario)

Si no habilitó Auto replication building durante la importación, o si la configuración automática presentó errores y no se puede recuperar, configure el vínculo de replicación manualmente.

  1. Create a privileged account en la instancia de RDS.

  2. En la base de datos autogestionada de origen, cree una cuenta de replicación y otorgue los permisos necesarios:

    -- Create a replication account. For production, restrict the allowed IP address instead of using '%'.
    -- Replace 'Test123!' with a strong password.
    CREATE USER 'replica'@'%' IDENTIFIED BY 'Test123!';
    
    -- Grant replication permissions
    GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replica'@'%';
    
    -- Apply the changes
    FLUSH PRIVILEGES;
  3. Log on to the RDS instance using the privileged account y ejecute los siguientes comandos: MySQL 5.7

    -- Configure the replication source
    CHANGE MASTER TO
      MASTER_HOST='<source_IP>',
      MASTER_PORT='<source_port>',
      MASTER_USER='<replication_account>',
      MASTER_PASSWORD='<replication_account_password>',
      MASTER_AUTO_POSITION=1;
    
    -- Start replication
    START SLAVE;
    
    -- Check replication status
    SHOW SLAVE STATUS;

    MySQL 8.0

    -- Configure the replication source
    CHANGE REPLICATION SOURCE TO
      SOURCE_HOST='<source_IP>',
      SOURCE_PORT='<source_port>',
      SOURCE_USER='<replication_account>',
      SOURCE_PASSWORD='<replication_account_password>',
      SOURCE_AUTO_POSITION=1;
    
    -- Start replication
    START REPLICA;
    
    -- Check replication status
    SHOW REPLICA STATUS;

Comprobar el estado de la replicación

En la página Native Replication de la instancia de RDS, compruebe el estado de la replicación. Cuando muestre Running, el vínculo de replicación estará activo y los datos se sincronizarán.

Deshabilitar la replicación nativa

Cuando esté listo para cambiar la aplicación, o si ya no necesita la replicación, deshabilite la replicación nativa para devolver la instancia al modo de lectura y escritura.

  1. Vaya a la página RDS Instances, seleccione una región y haga clic en el ID de la instancia.

  2. En el panel de navegación izquierdo, haga clic en Native Replication y luego haga clic en Disable.

  3. Haga clic en OK.

Importante

Después de hacer clic en OK, se termina el vínculo de replicación desde la base de datos de origen. La instancia de RDS vuelve a ser una instancia estándar de ApsaraDB RDS for MySQL y cambia del modo de solo lectura al modo de lectura y escritura, lo que permite las operaciones de escritura.

Referencia de API

Operación

API

Notas

Crear una instancia con replicación nativa

CreateDBInstance

Establezca ExternalReplication en ON. La configuración básica de la instancia debe cumplir con los prerequisites.

Configurar un vínculo de replicación nativa para una instancia existente

ImportUserBackupFile

—

Pasos siguientes