Migración de datos a TaurusDB mediante mysqldump
Puede usar mysqldump para migrar datos a TaurusDB.
Precauciones
La migración de la base de datos se realiza sin conexión. Antes de la migración, debe detener cualquier aplicación que utilice la base de datos de origen.
Preparación para la migración
- Prepare un ECS en la misma VPC y subred que la instancia de TaurusDB o vincule una EIP a la instancia de TaurusDB.
- Para conectarse a una instancia con una red privada, primero se debe crear un ECS.
- Para conectarse a una instancia a través de una EIP, debe:
- Vincule la EIP a la instancia. Para más detalles, véase Procedimiento.
- Asegúrese de que el dispositivo local puede acceder a la EIP que se ha enlazado a la instancia.
- Instale el cliente mysql en el ECS preparado o en el dispositivo que puede acceder a la instancia de TaurusDB.
- Instale el cliente mysql siguiendo las instrucciones de ¿Cómo puedo instalar el cliente mysql?
- Asegúrese de que la versión del cliente mysql sea la misma o posterior a la instalada en la instancia de TaurusDB. La base de datos o cliente MySQL proporciona mysqldump y mysql por defecto.
Exportación de datos
Antes de migrar datos de la base de datos de origen a la instancia de TaurusDB, primero debe exportar los datos de la base de datos de origen.

mysqldump debe coincidir con la versión del motor de BD.
- Inicie sesión en el ECS preparado o en el dispositivo que puede acceder a la instancia de TaurusDB.
- Utilice mysqldump para exportar metadatos a un archivo SQL.
Las bases de datos MySQL son necesarias para la gestión de TaurusDB. Al exportar metadatos, no especifique --all-database o las bases de datos no estarán disponibles.
mysqldump --databases <DB_NAME> --single-transaction --order-by-primary --hex-blob --no-data --routines --events --set-gtid-purged=OFF -u <DB_USER> -p -h <DB_ADDRESS> -P <DB_PORT> |sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' -e 's/DEFINER[ ]*=.*FUNCTION/FUNCTION/' -e 's/DEFINER[ ]*=.*PROCEDURE/PROCEDURE/' -e 's/DEFINER[ ]*=.*TRIGGER/TRIGGER/' -e 's/DEFINER[ ]*=.*EVENT/EVENT/' > <BACKUP_FILE>
- <DB_NAME> indica el nombre de la base de datos que se desea migrar.
- <DB_USER> indica el nombre de usuario de la base de datos.
- <DB_ADDRESS> indica la dirección de la base de datos.
- <DB_PORT> indica el puerto de la base de datos.
- <BACKUP_FILE> indica el nombre del archivo al que se exportarán los datos.
Introduzca la contraseña de la base de datos cuando se le solicite.
Por ejemplo:
mysqldump --databases gaussdb --single-transaction --order-by-primary --hex-blob --no-data --routines --events --set-gtid-purged=OFF -u root -p -h 192.*.*.* -P 3306 |sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' -e 's/DEFINER[ ]*=.*FUNCTION/FUNCTION/' -e 's/DEFINER[ ]*=.*PROCEDURE/PROCEDURE/' -e 's/DEFINER[ ]*=.*TRIGGER/TRIGGER/' -e 's/DEFINER[ ]*=.*EVENT/EVENT/' > dump-defs.sql
Ingresar contraseña:
Después de ejecutar este comando, se generará el archivo dump-defs.sql.
- Utilice mysqldump para exportar datos a un archivo SQL.
Las bases de datos MySQL son necesarias para la gestión de TaurusDB. Al exportar metadatos, no especifique --all-database o las bases de datos no estarán disponibles.
mysqldump --databases <DB_NAME> --single-transaction --hex-blob --set-gtid-purged=OFF --no-create-info --skip-triggers -u <DB_USER> -p -h <DB_ADDRESS> -P <DB_PORT> -r <BACKUP_FILE>
Para obtener detalles sobre los parámetros del comando anterior, vea 2.
Introduzca la contraseña de la base de datos cuando se le solicite.
Por ejemplo:
mysqldump --databases gaussdb --single-transaction --hex-blob --set-gtid-purged=OFF --no-create-info --skip-triggers -u root -p -h 192.*.*.* -P 3306 -r dump-data.sql
Después de ejecutar este comando, se generará el archivo dump-data.sql.
Importación de datos
Puede utilizar un cliente para conectarse a la instancia de TaurusDB con un ECS o dispositivo que pueda acceder a la instancia de TaurusDB y luego importar los archivos SQL exportados a esa instancia.

Si la base de datos de origen invoca a activadores, procedimientos almacenados, funciones o eventos, debe establecer log_bin_trust_function_creators en ON para la base de datos de destino antes de importar datos.
- Importar metadatos en la instancia de TaurusDB.
mysql -f -h <DB_ADDRESS> -P <DB_PORT> -u root -p < <BACKUP_DIR>/dump-defs.sql
- <DB_ADDRESS> indica la dirección IP de la instancia de TaurusDB.
- <DB_PORT> indica el puerto de la instancia de TaurusDB.
- <BACKUP_DIR> indica el directorio donde se almacenará dump-defs.sql.
Por ejemplo:
mysql -f -h 172.*.*.* -P 3306 -u root -p < dump-defs.sql
Ingresar contraseña:
- Importar datos en la instancia TaurusDB.
mysql -f -h <DB_ADDRESS> -P <DB_PORT> -u root -p < <BACKUP_DIR>/dump-data.sql
- <DB_ADDRESS> indica la dirección IP de la instancia de TaurusDB.
- <DB_PORT> indica el puerto de la instancia de TaurusDB.
- <BACKUP_DIR> indica el directorio donde se almacenará dump-data.sql.
Por ejemplo:
mysql -f -h 172.*.*.* -P 3306 -u root -p < dump-data.sql
Ingresar contraseña:
- Utilice la herramienta MySQL para conectarse a la instancia de TaurusDB y ver los resultados.
mysql> show databases;
En este ejemplo, se ha importado la base de datos denominada my_db.
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | my_db | | mysql | | performance_schema | +--------------------+ 4 rows in set (0.00 sec)