Todos los productos
Search
Centro de documentos

ApsaraDB RDS:Migrar una base de datos MariaDB autogestionada a ApsaraDB RDS for MariaDB mediante mysqldump

Última actualización: Sep 03, 2026

Use la herramienta mysqldump para migrar datos desde una base de datos MariaDB autogestionada hacia una instancia de ApsaraDB RDS for MariaDB.

Contexto

ApsaraDB RDS for MariaDB es totalmente compatible con MariaDB nativo. Por lo tanto, migrar su base de datos a una instancia de RDS es similar a migrar datos entre dos servidores MariaDB.

Este tema toma como ejemplo una base de datos autogestionada que se ejecuta en Linux 7 y MariaDB 10.2.4.

Notas de uso

Después de la migración, los nombres de las tablas se convierten a minúsculas y dejan de distinguir entre mayúsculas y minúsculas.

Requisitos previos

Ya cuenta con configured an IP address whitelist y applied for a public endpoint para su instancia de ApsaraDB RDS for MariaDB.

Procedimiento

  1. Use una herramienta cliente para connect to your ApsaraDB RDS for MariaDB instance y cree una base de datos vacía. En este ejemplo, la base de datos se llama test001. En el cliente MySQL-Front, conéctese a la instancia de MariaDB y ejecute el comando create database test001; en el SQL Editor para crear la base de datos de destino. Tras ejecutar el comando, la base de datos test001 aparecerá en la lista de bases de datos del panel izquierdo.

  2. Inicie sesión en su servidor Linux local y use la herramienta mysqldump para exportar los datos de la base de datos a un archivo de datos.

    mysqldump -h localhost -u <source_username> -p --opt --default-character-set=utf8 --hex-blob <source_database_name> --skip-triggers > /tmp/<source_database_name>.sql

    Ejemplo:

    Nota

    La cuenta user del siguiente ejemplo debe tener permisos específicos. Para obtener instrucciones, consulte Configuración de permisos.

    mysqldump -h localhost -u user -p --opt --default-character-set=utf8 --hex-blob testdb --skip-triggers > /tmp/testdb.sql
    Importante

    No actualice los datos durante la exportación. Este paso solo exporta los datos de la base de datos, no los procedimientos almacenados, los desencadenadores ni las funciones.

  3. Use mysqldump para exportar los procedimientos almacenados, los desencadenadores y las funciones.

    mysqldump -h localhost -u <source_username> -p --opt --default-character-set=utf8 --hex-blob <source_database_name> -R | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /tmp/<source_database_name>_trigger.sql

    Ejemplo:

    mysqldump -h localhost -u user -p --opt --default-character-set=utf8 --hex-blob testdb -R | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /tmp/testdb_trigger.sql
    Nota

    Si su base de datos no usa procedimientos almacenados, desencadenadores ni funciones, omita este paso. Al exportar estos objetos, elimine la cláusula DEFINER para garantizar la compatibilidad con ApsaraDB RDS for MariaDB.

  4. Ejecute los siguientes comandos para importar los archivos exportados a la instancia de ApsaraDB RDS for MariaDB de destino.

    mysql -h <rds_public_endpoint> -P <rds_port> -u <privileged_account> -p <target_database_name> < /tmp/<source_database_name>.sql
    mysql -h <rds_public_endpoint> -P <rds_port> -u <privileged_account> -p <target_database_name> < /tmp/<source_database_name>_trigger.sql

    Ejemplo:

    mysql -h rm-bpxxxxx.mariadb.rds.aliyuncs.com -P 3306 -u testuser -p test001 < /tmp/testdb.sql
    mysql -h rm-bpxxxxx.mariadb.rds.aliyuncs.com -P 3306 -u testuser -p test001 < /tmp/testdb_trigger.sql
  5. Actualice su herramienta cliente y revise las tablas de la base de datos de destino para comprobar que los datos se migraron correctamente.