Puede migrar una instantánea de base de datos de RDS for MySQL a una nueva instancia de base de datos en la que se ejecuta MariaDB mediante la AWS Management Console, la AWS CLI o la API de Amazon RDS. Debe usar la instantánea de base de datos creada desde una instancia de base de datos de Amazon RDS que ejecute MySQL 5.6 o 5.7. Para aprender a crear una instantánea de base de datos RDS for MYSQL, consulte Creación de una instantánea de base de datos para una instancia de base de datos single-AZ para Amazon RDS.
La migración de la instantánea no afecta a la instancia de base de datos original desde la que se tomó la instantánea. Puede probar y validar la nueva instancia de base de datos antes de desviar el tráfico a ella como reemplazo de la instancia de base de datos original.
Después de migrar de MySQL a MariaDB, la instancia de base de datos MariaDB se asocia con el grupo de parámetros de base de datos predeterminado y el grupo de opciones correspondiente. Después de restaurar la instantánea de base de datos, puede asociar un grupo de parámetros de base de datos personalizado con la nueva instancia de base de datos. Sin embargo, un grupo de parámetros de MariaDB tiene un conjunto diferente de variables de sistema configurables. Para obtener información acerca de las diferencias entre las variables de sistema de MySQL y MariaDB, consulte System Variable Differences between MariaDB and MySQL
Realización de la migración
Se puede migrar una instantánea de base de datos de RDS for MySQL a una nueva instancia de base de datos de MariaDB mediante la AWS Management Console, la AWS CLI o la API de RDS.
Para migrar una instantánea de base de datos de MySQL a una instancia de base de datos MariaDB
-
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Snapshots (Instantáneas) y, a continuación, seleccione la instantánea de base de datos MySQL que desea migrar.
-
En Actions (Acciones), elija Migrate Snapshot (Migrar instantánea). Aparece la página Migrate Database (Migrar base de datos).
-
En Migrate to DB Engine (Migrar a motor de base de datos), elija mariadb.
Amazon RDS selecciona la DB engine version (Versión del motor de base de datos) automáticamente. No se puede cambiar la versión del motor de base de datos.
-
En el resto de secciones, especifique los ajustes de configuración de la instancia de base de datos. Para obtener más información acerca de cada ajuste, consulte Configuración de instancias de base de datos.
-
Elija Migrate (Migrar).
Para migrar datos desde una instantánea de base de datos de MySQL a una instancia de base de datos de MariaDB, ejecute el comando restore-db-instance-from-db-snapshot
de la AWS CLI con las siguientes opciones:
--db-instance-identifier: nombre de la instancia de base de datos que se debe crear a partir de la instantánea de base de datos.
--db-snapshot-identifier: identificador de la instantánea de base de datos desde la que se debe restaurar.
--engine: motor de base de datos que se va a usar para la nueva instancia.
Para Linux, macOS o Unix:
aws rds restore-db-instance-from-db-snapshot \ --db-instance-identifier
newmariadbinstance
\ --db-snapshot-identifiermysqlsnapshot
\ --enginemariadb
Para Windows:
aws rds restore-db-instance-from-db-snapshot ^ --db-instance-identifier
newmariadbinstance
^ --db-snapshot-identifiermysqlsnapshot
^ --enginemariadb
Para migrar los datos desde una instantánea de base de datos de MySQL a una instancia de base de datos de MariaDB, llame a la operación RestoreDBInstanceFromDBSnapshot
de la API de Amazon RDS.
Incompatibilidades entre MariaDB y MySQL
Entre las incompatibilidades entre MySQL y MariaDB se incluyen las siguientes:
No puede migrar una instantánea de base de datos creada con MySQL 8.0 a MariaDB.
Si la base de datos de MySQL de origen utiliza un hash de contraseña SHA256, asegúrese de restablecer las contraseñas de usuario con hash SHA256 antes de conectarse a la base de datos MariaDB. El siguiente código muestra cómo restablecer una contraseña con hash SHA256.
SET old_passwords = 0; UPDATE mysql.user SET plugin = 'mysql_native_password', Password = PASSWORD('new_password') WHERE (User, Host) = ('master_user_name', %); FLUSH PRIVILEGES;
Si su cuenta de usuario maestro de RDS utiliza el hash de contraseña SHA-256, asegúrese de restablecer la contraseña mediante la AWS Management Console, el comando
modify-db-instance
de la AWS CLI o la operación ModifyDBInstance de la API de RDS. Para obtener más información sobre la modificación de una instancia de base de datos, consulte Modificación de una instancia de base de datos de Amazon RDS.MariaDB no admite el complemento Memcached. Sin embargo, los datos que utiliza el complemento Memcached se almacenan como tablas InnoDB. Después de migrar una instantánea de base de datos de MySQL, puede obtener acceso a los datos empleados por el complemento Memcached usando SQL. Para obtener más información acerca de la base de datos innodb_memcache, consulte InnoDB memcached Plugin Internals
.