Amazon RDS MariaDB proporciona formas sencillas de importar datos a una base de datos y exportar datos desde una base de datos. Una vez que podamos conectarnos con éxito a la base de datos MariaDB, podemos usar las herramientas CLI para ejecutar comandos de importación y exportación para obtener datos de otras fuentes hacia y desde la base de datos RDS.
A continuación, se muestran los escenarios a considerar al elegir un enfoque para importar datos a una base de datos de Amazon RDS-MariaDB.
Una MariaDB existente puede estar presente localmente o en otra instancia EC2. A continuación se muestra un esquema de lo que estamos haciendo.
Como primer paso, creamos una copia de seguridad de la base de datos local usando el siguiente comando. MariaDB, al ser un clon de MySQL, puede usar casi todos los mismos comandos que MySQL.
# mysqldump -u user -p[user_password] [database_name] > backupfile.sql
Se crea un archivo llamado backupfile.sql que contiene la estructura de la tabla junto con los datos que se utilizarán.
Cargue el archivo de copia de seguridad creado anteriormente en un bucket de Amazon S3 predefinido en la misma región que la base de datos RDS MariaDB de destino. Puede seguir este enlace para saber cómo descargar.
Puede utilizar el siguiente comando de la CLI de Amazon para importar datos de S3 a la base de datos MariaDB.
aws rds restore-db-instance-from-s3 --allocated-storage 125 --db-instance-identifier tddbidentifier --db-instance-class db.m4.small --engine mysql --master-user-name masterawsuser --master-user-password masteruserpassword --s3-bucket-name tpbucket --s3-ingestion-role-arn arn:aws:iam::account-number:role/rolename --s3-prefix bucketprefix --source-engine mysql --source-engine-version 5.6.27
Puede haber escenarios en los que desee que los datos de una base de datos RDS MariaDB existente se migren a otra RDS MariaDB. Por ejemplo, para crear una base de datos de recuperación ante desastres, o crear una base de datos de informes comerciales, etc. En tal escenario, creamos réplicas de lectura que son una copia de su base de datos original y luego enviamos esa réplica de lectura a la nueva instancia de base de datos. Se utilizan para evitar lecturas pesadas directas desde la base de datos fuente original cuando queremos copiar datos.
aws rds create-db-instance-read-replica --db-instance-identifier myreadreplica --source-db-instance-identifier mydbinstance
Ahora que tenemos una réplica, podemos promoverla a una instancia de base de datos independiente. Esto servirá para nuestra necesidad final de importar datos de la base de datos RDS – MariaDB a la nueva. El siguiente comando se utiliza para completar la promoción de una réplica de lectura a una instancia de base de datos.
aws rds create-db-instance-read-replica --db-instance-identifier readreplica_name --region target_region_name --db-subnet-group-name subnet_name --source-db-instance-identifier arn:aws:rds:region_name:11323467889012:db:mysql_instance1
Para importar datos de cualquier otra base de datos a Amazon RDS – MariaDB, tenemos que utilizar el Servicio de migración de datos de Amazon, también llamado Amazon DMS. Utiliza una herramienta de conversión de esquemas para migrar una base de datos existente a la plataforma MYSQL. El diagrama siguiente explica el proceso general. También funciona con el mismo principio de replicación que se describe en la sección anterior.
Exportar datos de Amazon RDS Mysql DB es un proceso sencillo en el que funciona de la misma manera que vimos anteriormente para la replicación. Los siguientes son los pasos para completar el proceso de exportación.
A continuación se muestra el código de comando mysqldump para transferir datos.
mysqldump -h RDS instance endpoint -u user -p password --port=3306 --single-transaction --routines --triggers --databases database database2 --compress --compact | mysql -h MariaDB host -u master user -p password --port 3306
🚫