

# Amazon RDS para MariaDB
<a name="CHAP_MariaDB"></a>

Amazon RDS admite varias versiones de instancias de MariaDB para base de datos. Para obtener toda la información necesaria sobre versiones compatibles, consulte [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md).

Para crear una instancia de base de datos de MariaDB, utilice las herramientas o interfaces de administración de Amazon RDS. A continuación, puede utilizar las herramientas de Amazon RDS para realizar acciones de administración para la instancia de base de datos. Incluyen acciones como las siguientes: 
+ Reconfiguración o cambio de tamaño de la instancia de base de datos
+ Autorización de las conexiones a la instancia de base de datos 
+ Creación y restauración a partir de copias de seguridad o instantáneas
+ Creación de secundarios Multi-AZ
+ Creación de réplicas de lectura
+ Supervisión del rendimiento de su instancia de base de datos

Para almacenar y acceder a los datos de la instancia de base de datos, use las utilidades y aplicaciones estándar de MariaDB. 

MariaDB está disponible en todas las Regiones de AWS. Para obtener más información acerca de Regiones de AWS, consulte [Regiones, zonas de disponibilidad y Local Zones](Concepts.RegionsAndAvailabilityZones.md). 

Puede utilizar Amazon RDS para bases de datos de Amazon RDS for MariaDB para crear aplicaciones compatibles con HIPAA. Puede guardar información de contenido sanitario, incluida información sanitaria protegida (PHI), si ha firmado un Acuerdo para socio empresarial (BAA) de AWS. Para obtener más información, consulte [Conformidad con HIPAA](https://aws.amazon.com/compliance/hipaa-compliance/). AWS Los servicios en el ámbito han sido evaluados completamente por un auditor externo y dan como resultado una certificación, declaración de conformidad o autoridad para operar (ATO). Para obtener más información, consulte [Servicios de AWS incluidos en el ámbito por programa de conformidad](https://aws.amazon.com/compliance/services-in-scope/). 

Antes de crear una instancia de base de datos, complete los pasos que se describen en [Configuración del entorno para Amazon RDS](CHAP_SettingUp.md). Cuando crea una instancia de base de datos, el usuario maestro de RDS obtiene privilegios de DBA, con algunas limitaciones. Utilice esta cuenta para tareas administrativas, como crear cuentas de base de datos adicionales.

Puede crear lo siguiente:
+ Instancias de base de datos
+ Instantáneas de base de datos
+ Restauraciones a un momento dado
+ Copias de seguridad automatizadas
+ Copias de seguridad manuales

Puede utilizar instancias de base de datos que ejecuten MariaDB en una nube privada virtual (VPC) basada en Amazon VPC. También puede agregar características a la instancia de base de datos de MariaDB; para ello, habilite diversas opciones. Amazon RDS admite implementaciones multi-AZ para MariaDB como una solución de conmutación por error de alta disponibilidad.

**importante**  
Para ofrecer una experiencia de servicio administrado, Amazon RDS no proporciona acceso mediante shell a las instancias de base de datos. También restringe el acceso a ciertos procedimientos y tablas del sistema que requieren privilegios avanzados. Puede acceder a la base de datos con clientes estándar de SQL, como mysql. No obstante, no puede acceder al host directamente mediante Telnet o Secure Shell (SSH).

**Topics**
+ [Compatibilidad de características de MariaDB en Amazon RDS](MariaDB.Concepts.FeatureSupport.md)
+ [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md)
+ [Conexión a la instancia de base de datos de MariaDB](USER_ConnectToMariaDBInstance.md)
+ [Protección de las conexiones de instancias de base de datos MariaDB](securing-mariadb-connections.md)
+ [Mejora del rendimiento de las consultas de RDS para MariaDB con lecturas optimizadas de Amazon RDS](rds-optimized-reads-mariadb.md)
+ [Mejora del rendimiento de escritura con Escrituras optimizadas para Amazon RDS para MariaDB](rds-optimized-writes-mariadb.md)
+ [Actualizaciones del motor de base de datos de MariaDB](USER_UpgradeDBInstance.MariaDB.md)
+ [Actualización de una versión del motor de instantáneas de base de datos de MariaDB](mariadb-upgrade-snapshot.md)
+ [Importación de datos en una instancia de base de datos de Amazon RDS para MariaDB](MariaDB.Procedural.Importing.md)
+ [Uso de la replicación de MariaDB en Amazon RDS](USER_MariaDB.Replication.md)
+ [Opciones para el motor de base de datos de MariaDB](Appendix.MariaDB.Options.md)
+ [Parámetros de MariaDB](Appendix.MariaDB.Parameters.md)
+ [Migración de datos desde una instantánea de base de datos de MySQL a una instancia de base de datos MariaDB](USER_Migrate_MariaDB.md)
+ [Referencia de MariaDB en Amazon RDS SQL](Appendix.MariaDB.SQLRef.md)
+ [Zona horaria local para instancias de base de datos de MariaDB](MariaDB.Concepts.LocalTimeZone.md)
+ [Problemas conocidos y limitaciones de RDS para MariaDB](CHAP_MariaDB.Limitations.md)

# Compatibilidad de características de MariaDB en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport"></a>

RDS para MariaDB admite la mayoría de las características y capacidades de MariaDB. Algunas características pueden disponer de una compatibilidad limitada o de privilegios restringidos.

Puede filtrar nuevas características de Amazon RDS en la página [Novedades de Database](https://aws.amazon.com/about-aws/whats-new/database/). En el filtro **Products** (Productos), elija **Amazon RDS**. A continuación, busque con palabras clave como **MariaDB 2023**.

**nota**  
Las listas que siguen no son exhaustivas.

Para obtener más información sobre la compatibilidad de características de MariaDB en Amazon RDS, consulte los siguientes temas.

**Temas**
+ [Motores de almacenamiento de MariaDB admitidos en Amazon RDS](MariaDB.Concepts.Storage.md)
+ [Calentamiento de caché para MariaDB en Amazon RDS](MariaDB.Concepts.XtraDBCacheWarming.md)
+ [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md)

## Compatibilidad de características de MariaDB en las versiones principales de Amazon RDS para MariaDB
<a name="MariaDB.Concepts.FeatureSupport.MajorVersions"></a>

En las siguientes secciones, encontrará información sobre la compatibilidad de características de MariaDB en Amazon RDS para MariaDB para las versiones principales de MariaDB:

**Topics**
+ [Compatibilidad con MariaDB 11.8 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.11-8)
+ [Compatibilidad con MariaDB 11.4 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.11-4)
+ [Compatibilidad con MariaDB 10.11 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.10-11)
+ [Compatibilidad con MariaDB 10.6 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.10-6)
+ [Compatibilidad con MariaDB 10.5 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.10-5)
+ [Compatibilidad con MariaDB 10.4 en Amazon RDS](#MariaDB.Concepts.FeatureSupport.10-4)

Para obtener información acerca de la compatibilidad de las versiones secundarias de Amazon RDS for MariaDB, consulte [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md).

### Compatibilidad con MariaDB 11.8 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.11-8"></a>

Amazon RDS admite las siguientes características nuevas de las instancias de base de datos en las que se ejecuta la versión 11.8 de MariaDB o una posterior.

**nota**  
En MariaDB 11.8, el valor predeterminado para `require_secure_transport` es ahora `1`, lo que requiere conexiones SSL/TLS seguras. Establézcalo en `0` si se necesitan conexiones no seguras.
+ **Nuevo valor predeterminado para el parámetro**: el valor predeterminado del parámetro `require_secure_transport` ha cambiado de `0` a `1`, por lo que se imponen conexiones de transporte seguras de forma predeterminada. Para obtener más información, consulte [Necesidad de uso de SSL/TLS para todas las conexiones a una instancia de base de datos de MariaDB en Amazon RDS](mariadb-ssl-connections.require-ssl.md). 
+ **Soporte vectorial**: puede usar el vector de MariaDB para almacenar y buscar vectores generados por IA directamente en MariaDB. Esta característica presenta las siguientes variables del sistema:
  + La variable [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_distance](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_distance) especifica la métrica de distancia predeterminada para la indexación vectorial de MHNSW.
  + La variable [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_m](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_m) define el valor predeterminado del parámetro `M` en la indexación vectorial de MHNSW.
  + La variable [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_ef_search](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_ef_search) define el número mínimo de candidatos de resultados para las búsquedas de índices vectoriales.
  + La variable [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_max_cache_size](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_max_cache_size) establece el límite superior de una caché de índice vectorial de MHNSW.
+ **Límites de tamaño de archivo temporal**: ahora puede limitar el tamaño de las tablas y archivos temporales del disco creados mediante dos variables de sistema disponibles en el grupo de parámetros 11.8 de Maria DB de RDS:
  + La variable [https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_session_space_usage-system-variable](https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_session_space_usage-system-variable) limita la asignación de espacio temporal por usuario.
  + La variable [https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_total_space_usage-system-variable](https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_total_space_usage-system-variable) limita la asignación de espacio temporal para todos los usuarios.
+ **Administración del espacio de tabla temporal**: el espacio de tabla temporal almacena tablas temporales y crece a medida que se agregan datos. Cuando se eliminan las tablas temporales, el espacio no se reclama automáticamente. Puede utilizar el procedimiento [mysql.rds\$1execute\$1operation](mysql_rds_execute_operation.md) para reducir el espacio de tablas temporal y reclamar espacio de disco.

Para ver una lista de todas las características de MariaDB 11.8 y de su documentación, consulte [Changes and improvements in MariaDB 11.8](https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-8/) y [Release notes - MariaDB 11.8 series](https://mariadb.com/kb/en/release-notes-mariadb-11-8-series/) en el sitio web de MariaDB.

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md).

### Compatibilidad con MariaDB 11.4 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.11-4"></a>

Amazon RDS admite las siguientes características nuevas de las instancias de base de datos en las que se ejecuta la versión 11.4 de MariaDB o una posterior.
+ **Biblioteca criptográfica**: RDS para MariaDB ha sustituido a OpenSSL por AWS Libcrypto Libcrypto (AWS-LC-LC), que cuenta con la certificación FIPS 140-3.
+ **Complemento simple de verificación de contraseñas**: puede usar el [complemento simple de verificación de contraseñas](https://mariadb.com/kb/en/simple-password-check-plugin/) para MariaDB para verificar si una contraseña contiene al menos un número específico de caracteres de un tipo específico. Para obtener más información, consulte [Uso de complementos de validación de contraseñas de RDS para MariaDB](MariaDB.Concepts.PasswordValidationPlugins.md).
+ **Complemento de verificación de contraseñas Cracklib**: puede usar el [complemento de verificación de contraseñas Cracklib](https://mariadb.com/kb/en/cracklib-password-check-plugin/) para MariaDB para comprobar la seguridad de las nuevas contraseñas. Para obtener más información, consulte [Uso de complementos de validación de contraseñas de RDS para MariaDB](MariaDB.Concepts.PasswordValidationPlugins.md).
+ **Mejoras de InnoDB**: estas mejoras incluyen los siguientes elementos:
  + Se ha eliminado el búfer de cambios. Para obtener más información, consulte [InnoDB Change Buffering](https://mariadb.com/kb/en/innodb-change-buffering/).
  + Se ha eliminado la desfragmentación de InnoDB. Para obtener más información, consulte [InnoDB Defragmentation](https://mariadb.com/kb/en/defragmenting-innodb-tablespaces/#innodb-defragmentation).
+ **Nuevo privilegio**: el usuario administrador ahora también tiene el privilegio `SHOW CREATE ROUTINE`. Este privilegio permite al concesionario ver la instrucción de definición `SHOW CREATE` de una rutina que es propiedad de otro usuario. Para obtener más información acerca de los privilegios, consulte [Database Privileges](https://mariadb.com/kb/en/grant/#database-privileges).
+ **Mejora de la replicación**: las instancias de base de datos MariaDB versión 11.4 admiten la indexación binlog. Puede crear un índice GTID para cada archivo binlog. Estos índices mejoran el rendimiento de la replicación al reducir el tiempo que se tarda en localizar un GTID. Para obtener más información, consulte [Binlog Indexing](https://mariadb.com/kb/en/gtid/#binlog-indexing).
+ **Parámetros obsoletos o eliminados**: los siguientes parámetros han quedado obsoletos o se han eliminado para las instancias de base de datos de la versión 11.4 de MariaDB:
  + `engine_condition_pushdown` se ha eliminado de [optimizer\$1switch](https://mariadb.com/kb/en/optimizer-switch/)
  + [innodb\$1change\$1buffer\$1max\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_change_buffer_max_size)
  + [innodb\$1defragment](https://mariadb.com/kb/en/innodb-system-variables/#innodb_defragment)
  + `TLSv1.0` y `TLSv1.1` se han eliminado de [tls\$1version](https://mariadb.com/kb/en/ssltls-system-variables/#tls_version)
+ **Nuevos valores predeterminados de un parámetro**: el valor predeterminado del parámetro [innodb\$1undo\$1tablespaces](https://mariadb.com/kb/en/innodb-system-variables/#innodb_undo_tablespaces) ha cambiado de `0` a `3`.
+ **Nuevos valores válidos de los parámetros**: los siguientes parámetros tienen nuevos valores válidos para las instancias de base de datos de la versión 11.4 de MariaDB:
  + Los valores válidos del parámetro [binlog\$1row\$1image](https://mariadb.com/kb/en/replication-and-binary-log-system-variables/#binlog_row_image) ahora incluyen `FULL_NODUP`.
  + Los valores válidos del parámetro [OLD\$1MODE](https://mariadb.com/kb/en/old-mode/) ahora incluyen `NO_NULL_COLLATION_IDS`.
+ **Nuevos parámetros**: los siguientes parámetros son nuevos para las instancias de base de datos de la versión 11.4 de MariaDB:
  + El parámetro [transaction\$1isolation](https://mariadb.com/kb/en/server-system-variables/#transaction_isolation) reemplaza al parámetro [tx\$1isolation](https://mariadb.com/kb/en/server-system-variables/#tx_isolation).
  + El parámetro [transaction\$1read\$1only](https://mariadb.com/kb/en/server-system-variables/#transaction_read_only) reemplaza al parámetro [tx\$1read\$1only](https://mariadb.com/kb/en/server-system-variables/#tx_read_only).
  + El parámetro [block\$1encryption\$1mode](https://mariadb.com/kb/en/server-system-variables/#block_encryption_mode) define el modo de cifrado por bloques predeterminado para las funciones [AES\$1ENCRYPT()](https://mariadb.com/kb/en/aes_encrypt/) y [AES\$1DECRYPT()](https://mariadb.com/kb/en/aes_decrypt/).
  + El parámetro [character\$1set\$1collations](https://mariadb.com/kb/en/server-system-variables/#character_set_collations) define las anulaciones de las intercalaciones predeterminadas del conjunto de caracteres.
  + Los parámetros [binlog\$1gtid\$1index](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index), [binlog\$1gtid\$1index\$1page\$1size](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index_page_size) y [binlog\$1gtid\$1index\$1span\$1min](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index_span_min) definen las propiedades del índice GTID de binlog. Para obtener más información, consulte [Binlog Indexing](https://mariadb.com/kb/en/gtid/#binlog-indexing). 

Para ver una lista de todas las características de MariaDB 11.4 y de su documentación, consulte [Changes and improvements in MariaDB 11.4](https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-4/) y [Release notes - MariaDB 11.4 series](https://mariadb.com/kb/en/release-notes-mariadb-11-4-series/) en el sitio web de MariaDB.

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md).

### Compatibilidad con MariaDB 10.11 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.10-11"></a>

Amazon RDS admite las siguientes características nuevas de las instancias de base de datos en las que se ejecuta la versión 10.11 de MariaDB o una posterior.
+ **Complemento Password Reuse Check**: puede utilizar el complemento Password Reuse Check de MariaDB para evitar que los usuarios reutilicen las contraseñas y para establecer el período de retención de las contraseñas. Para obtener más información, consulte el [complemento Password Reuse Check](https://mariadb.com/kb/en/password-reuse-check-plugin/).
+ **Autorización GRANT TO PUBLIC**: puede conceder privilegios a todos los usuarios que tengan acceso a su servidor. Para obtener más información, consulte [GRANT TO PUBLIC](https://mariadb.com/kb/en/grant/#to-public).
+ **Disociación de los privilegios SUPER y READ ONLY ADMIN**: puede eliminar los privilegios READ ONLY ADMIN de todos los usuarios, incluidos los usuarios que antes tenían privilegios SUPER. 
+ **Seguridad**: ahora puede configurar la opción `--ssl`como predeterminada para su cliente MariaDB. MariaDB ya no deshabilita silenciosamente la SSL si la configuración es incorrecta. 
+ **Comandos y funciones de SQL**: ahora puede utilizar el comando `SHOW ANALYZE FORMAT=JSON` y las funciones `ROW_NUMBER`, `SFORMAT` y `RANDOM_BYTES`. `SFORMAT` permite el formato de cadena y está habilitado de forma predeterminada. Puede convertir la partición en tabla y la tabla en partición con un solo comando. También hay varias mejoras en torno a las funciones `JSON_*()`. Las funciones `DES_ENCRYPT` y `DES_DECRYPT` han quedado obsoletas para la versión 10.10 y versiones posteriores. Para obtener más información, consulte [SFORMAT](https://mariadb.com/kb/en/sformat/).
+ **Mejoras de InnoDB**: estas mejoras incluyen los siguientes elementos:
  + Mejoras en el rendimiento del registro REDO para reducir la amplificación de la escritura y mejorar la simultaneidad.
  + Posibilidad de cambiar el espacio de tabla UNDO sin reinicializar el directorio de datos. Esta mejora reduce la sobrecarga del plano de control. Se requiere un reinicio, pero no se requiere reinicialización después de cambiar el espacio de tabla UNDO. 
  + Soporte para `CHECK TABLE … EXTENDED` y para índices descendentes internamente.
  + Mejoras en la inserción masiva.
+ **Cambios de binlog**: estos cambios incluyen los siguientes elementos:
  + Registro `ALTER` en dos fases para reducir la latencia de replicación. El parámetro `binlog_alter_two_phase` está deshabilitado de forma predeterminada, pero se puede habilitar mediante grupos de parámetros.
  + Registro `explicit_defaults_for_timestamp`.
  + Ya no se registra `INCIDENT_EVENT` si la transacción se puede anular de forma segura. 
+ **Mejoras de** **replicación**: las instancias de base de datos de la versión 10.11 de MariaDB utilizan la replicación GTID de forma predeterminada si el maestro la admite. Además, `Seconds_Behind_Master` es más preciso.
+ **Clientes**: puede utilizar las nuevas opciones de línea de comandos para `mysqlbinglog` y `mariadb-dump`. Puede utilizar `mariadb-dump` para volcar y restaurar datos históricos.
+ **Control de versiones del sistema**: es posible modificar el historial. MariaDB crea automáticamente nuevas particiones.
+ **DDL atómico**: ahora `CREATE OR REPLACE` es atómico. La instrucción se lleva a cabo correctamente o se revierte por completo.
+ **Escritura del registro REDO**: el registro REDO se escribe de forma asíncrona.
+ **Funciones almacenadas**: las funciones almacenadas ahora admiten los mismos parámetros `IN`, `OUT` e `INOUT` que los procedimientos almacenados.
+ **Parámetros obsoletos o eliminados**: los siguientes parámetros han quedado obsoletos o se han eliminado para las instancias de base de datos de la versión 10.11 de MariaDB:
  + [innodb\$1change\$1buffering](https://mariadb.com/kb/en/innodb-system-variables/#innodb_change_buffering)
  + [innodb\$1disallow\$1writes](https://mariadb.com/kb/en/innodb-system-variables/#innodb_disallow_writes)
  + [innodb\$1log\$1write\$1ahead\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_write_ahead_size) 
  + [ innodb\$1prefix\$1index\$1cluster\$1optimization](https://mariadb.com/kb/en/innodb-system-variables/#innodb_prefix_index_cluster_optimization)
  + [ keep\$1files\$1on\$1create](https://mariadb.com/kb/en/server-system-variables/#keep_files_on_create)
  + [old](https://mariadb.com/kb/en/server-system-variables/#old)
+ **Parámetros dinámicos**: los siguientes parámetros son ahora dinámicos para las instancias de base de datos de la versión 10.11 de MariaDB:
  + [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size)
  + [innodb\$1write\$1io\$1threads](https://mariadb.com/kb/en/innodb-system-variables/#innodb_write_io_threads)
  + [innodb\$1read\$1io\$1threads](https://mariadb.com/kb/en/innodb-system-variables/#innodb_read_io_threads)
+ **Valores nuevos predeterminados para los parámetros**: los siguientes parámetros tienen valores predeterminados nuevos para las instancias de base de datos de la versión 10.11 de MariaDB:
  + El valor predeterminado del parámetro [explicit\$1defaults\$1for\$1timestamp](https://mariadb.com/kb/en/server-system-variables/#explicit_defaults_for_timestamp) ha cambiado de `OFF` a `ON`.
  + El valor predeterminados del parámetro [optimizer\$1prune\$1level](https://mariadb.com/kb/en/server-system-variables/#optimizer_prune_level) ha cambiado de `1` a `2`.
+ **Valores nuevos válidos de los parámetros**: los siguientes parámetros tienen valores predeterminados nuevos para las instancias de base de datos de la versión 10.11 de MariaDB:
  + Los valores válidos del parámetro [old](https://mariadb.com/kb/en/server-system-variables/#old) se fusionaron con los del parámetro [old\$1mode](https://mariadb.com/kb/en/server-system-variables/#old_mode).
  + Los valores válidos del parámetro [histogram\$1type](https://mariadb.com/kb/en/server-system-variables/#histogram_type) ahora incluyen `JSON_HB`.
  + El rango de valores válido para el parámetro [innodb\$1log\$1buffer\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_buffer_size) ahora es de `262144` a `4294967295` (256 KB a 4096 MB).
  + El rango de valores válido para el parámetro [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size) ahora es de `4194304` a `512GB` (4 MB a 512 GB).
  + Los valores válidos del parámetro [optimizer\$1prune\$1level](https://mariadb.com/kb/en/server-system-variables/#optimizer_prune_level) ahora incluyen `2`. 
+ **Nuevos parámetros**: los siguientes parámetros son nuevos para las instancias de base de datos de la versión 10.11 de MariaDB:
  + El parámetro [binlog\$1alter\$1two\$1phase](https://mariadb.com/kb/en/replication-and-binary-log-system-variables//#binlog_alter_two_phase) puede mejorar el rendimiento de la replicación.
  + El parámetro [log\$1slow\$1min\$1examined\$1row\$1limit](https://mariadb.com/kb/en/server-system-variables/#log_slow_min_examined_row_limit) puede mejorar el rendimiento.
  + El parámetro [log\$1slow\$1query](https://mariadb.com/kb/en/server-system-variables/#log_slow_query) y el parámetro [log\$1slow\$1query\$1file](https://mariadb.com/kb/en/server-system-variables/#log_slow_query_file) son alias de `slow_query_log` y `slow_query_log_file`, respectivamente.
  +  [ optimizer\$1extra\$1pruning\$1depth](https://mariadb.com/kb/en/server-system-variables/#optimizer_extra_pruning_depth)
  + [system\$1versioning\$1insert\$1history](https://mariadb.com/kb/en/system-versioned-tables/#system_versioning_insert_history)

Para ver una lista de todas las características de MariaDB 10.11 y de su documentación, consulte [Changes and improvements in MariaDB 10.11](https://mariadb.com/kb/en/changes-improvements-in-mariadb-1011/) y [Release notes - MariaDB 10.11 series](https://mariadb.com/kb/en/release-notes-mariadb-1011-series/) en el sitio web de MariaDB. 

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md). 

### Compatibilidad con MariaDB 10.6 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.10-6"></a>

Amazon RDS admite las siguientes características nuevas de las instancias de base de datos en las que se ejecuta la versión 10.6 de MariaDB o una posterior: 
+ **Motor de almacenamiento MyRocks**: puede utilizar el motor de almacenamiento MyRocks con RDS for MariaDB para optimizar el consumo de almacenamiento de las aplicaciones web con uso intensivo de escritura y de alto rendimiento. Para obtener más información, consulte [Motores de almacenamiento de MariaDB admitidos en Amazon RDS](MariaDB.Concepts.Storage.md) y [MyRocks](https://mariadb.com/kb/en/myrocks/).
+ **Autenticación de base de datos de AWS Identity and Access Management (IAM)**: puede utilizar la autenticación de base de datos de IAM para mejorar la seguridad y la administración central de las conexiones a sus instancias de base de datos de MariaDB. Para obtener más información, consulte [Autenticación de bases de datos de IAM para MariaDB, MySQL, and PostgreSQL](UsingWithRDS.IAMDBAuth.md). 
+ **Opciones de actualización**: ahora puede actualizar a la versión 10.6 de RDS for MariaDB desde cualquier versión principal anterior (10.3, 10.4, 10.5). También puede restaurar una instantánea de una instancia de base de datos MySQL 5.6 o 5.7 existente a una instancia de MariaDB 10.6. Para obtener más información, consulte [Actualizaciones del motor de base de datos de MariaDB](USER_UpgradeDBInstance.MariaDB.md).
+ **Replicación retrasada**: ahora puede establecer un periodo de tiempo configurable durante el cual una réplica de lectura se retrasa con respecto a la base de datos de origen. En una configuración de replicación estándar de MariaDB, hay un retraso de replicación mínimo entre el origen y la réplica. Con la replicación retrasada, puede configurar un retraso intencional como estrategia de recuperación de desastres. Para obtener más información, consulte [Configuración de la replicación retrasada con MariaDB](USER_MariaDB.Replication.ReadReplicas.DelayReplication.md).
+ **Compatibilidad con Oracle PL/SQL**: mediante el uso de la versión 10.6 de RDS for MariaDB puede migrar con más facilidad sus aplicaciones Oracle heredadas a Amazon RDS. Para obtener más información, consulte [SQL\$1MODE=ORACLE](https://mariadb.com/kb/en/sql_modeoracle/).
+ **Atomic DDL**: las instrucciones de lenguaje de datos dinámicos (DDL) pueden ser relativamente seguras frente a bloqueos con la versión 10.6 de RDS for MariaDB. `CREATE TABLE`, `ALTER TABLE`, `RENAME TABLE`, `DROP TABLE`, `DROP DATABASE` y las instrucciones DDL relacionadas ahora son atómicas. La instrucción se lleva a cabo correctamente o se revierte por completo. Para obtener más información, consulte [Atomic DDL](https://mariadb.com/kb/en/atomic-ddl/).
+ **Otras mejoras**: estas mejoras incluyen una función `JSON_TABLE` para transformar datos JSON a un formato relacional dentro de SQL y una carga más rápida de datos de tablas vacías con InnoDB. También incluyen un nuevo `sys_schema` para el análisis y la solución de problemas, la mejora del optimizador que permite ignorar los índices no utilizados, y las mejoras de rendimiento. Para obtener más información, consulte [JSON\$1TABLE](https://mariadb.com/kb/en/json_table/).
+ **Valores nuevos predeterminados para los parámetros**: los siguientes parámetros tienen valores predeterminados nuevos para las instancias de base de datos de la versión 10.6 de MariaDB:
  + El valor predeterminado para los siguientes parámetros ha cambiado de `utf8` a `utf8mb3`: 
    + [character\$1set\$1client](https://mariadb.com/kb/en/server-system-variables/#character_set_client)
    + [character\$1set\$1connection](https://mariadb.com/kb/en/server-system-variables/#character_set_connection)
    + [character\$1set\$1results](https://mariadb.com/kb/en/server-system-variables/#character_set_results)
    + [character\$1set\$1system](https://mariadb.com/kb/en/server-system-variables/#character_set_system)

    Si bien los valores predeterminados han cambiado para estos parámetros, no hay ningún cambio funcional. Para obtener más información, consulte [Supported Character Sets and Collations](https://mariadb.com/kb/en/supported-character-sets-and-collations/) (Conjuntos de caracteres e intercalaciones admitidos) en la documentación de MariaDB.
  + El valor predeterminado del parámetro [collation\$1connection](https://mariadb.com/kb/en/server-system-variables/#collation_connection) ha cambiado de `utf8_general_ci` a `utf8mb3_general_ci`. Si bien el valor predeterminado ha cambiado para este parámetro, no hay ningún cambio funcional.
  + El valor predeterminado del parámetro [old\$1mode](https://mariadb.com/kb/en/server-system-variables/#old_mode) ha cambiado de sin establecer a `UTF8_IS_UTF8MB3`. Si bien el valor predeterminado ha cambiado para este parámetro, no hay ningún cambio funcional.

Para ver una lista de todas las características de la versión 10.6 de MariaDB y la documentación correspondiente, consulte [Cambios y mejoras de la versión 10.6 de MariaDB](https://mariadb.com/kb/en/changes-improvements-in-mariadb-106/) y [Notas de la versión: serie 10.6 de MariaDB](https://mariadb.com/kb/en/release-notes-mariadb-106-series/) en el sitio web de MariaDB. 

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md). 

### Compatibilidad con MariaDB 10.5 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.10-5"></a>

Amazon RDS admite las siguientes características nuevas de sus instancias de base de datos en las que se ejecuta la versión 10.5 de MariaDB o una posterior: 
+ **Mejoras de InnoDB** – en la versión 10.5 de MariaDB se incluyen mejoras de InnoDB. Para obtener más información, consulte [ InnoDB: Performance Improvements etc.](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/#innodb-performance-improvements-etc) (InnoDB: mejoras de rendimiento, etc.) en la documentación de MariaDB.
+ **Actualizaciones del esquema de rendimiento** – en la versión 10.5 de MariaDB se incluyen actualizaciones del esquema de rendimiento. Para obtener más información, consulte [Performance Schema Updates to Match MySQL 5.7 Instrumentation and Tables](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/#performance-schema-updates-to-match-mysql-57-instrumentation-and-tables) (Actualizaciones del esquema de rendimiento para lograr la coincidencia con la instrumentación y las tablas de MySQL 5.7) en la documentación de MariaDB. 
+ **Un solo archivo en el registro REDO de InnoDB** – en las versiones de MariaDB anteriores a la versión 10.5, el valor del parámetro `innodb_log_files_in_group` estaba establecido en `2`. En la versión 10.5 de MariaDB, el valor de este parámetro está establecido en `1`.

  Si efectúa la actualización desde una versión anterior a la versión 10.5 de MariaDB y no modifica los parámetros, el valor del parámetro `innodb_log_file_size` no cambia. Sin embargo, vale para un solo archivo de registro en lugar de para dos. El resultado es que la instancia de base de datos actualizada de MariaDB, versión 10.5, utiliza la mitad del tamaño del registro REDO que usaba antes de la actualización. Este cambio puede tener un efecto notable en el rendimiento. Para solucionar este problema, puede duplicar el valor del parámetro `innodb_log_file_size`. Para obtener información acerca de cómo modificar los parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md). 
+ **No se admite el comando SHOW SLAVE STATUS** – en las versiones de MariaDB anteriores a la versión 10.5, el comando `SHOW SLAVE STATUS` requería el privilegio `REPLICATION SLAVE`. En la versión 10.5 de MariaDB, el comando `SHOW REPLICA STATUS` equivalente requiere el privilegio `REPLICATION REPLICA ADMIN`. Este privilegio nuevo no se otorga al usuario maestro de RDS.

  En lugar de utilizar el comando `SHOW REPLICA STATUS`, ejecute el procedimiento almacenado `mysql.rds_replica_status` nuevo para devolver información similar. Para obtener más información, consulte [mysql.rds\$1replica\$1status](mysql_rds_replica_status.md).
+ **No se admite el comando SHOW RELAYLOG EVENTS** – en las versiones de MariaDB anteriores a la versión 10.5, el comando `SHOW RELAYLOG EVENTS` requería el privilegio `REPLICATION SLAVE`. En la versión 10.5 de MariaDB, este comando requiere el privilegio `REPLICATION REPLICA ADMIN`. Este privilegio nuevo no se otorga al usuario maestro de RDS.
+ **Valores predeterminados nuevos para los parámetros – ** los siguientes parámetros tienen valores predeterminados nuevos para las instancias de base de datos de MariaDB, versión 10.5:
  + El valor predeterminado del parámetro [max\$1connections](https://mariadb.com/kb/en/server-system-variables/#max_connections) ha cambiado a `LEAST({DBInstanceClassMemory/25165760},12000)`. Para obtener información sobre la función de parámetro `LEAST`, consulte [Funciones de parámetros de base de datos](USER_ParamValuesRef.md#USER_ParamFunctions). 
  + El valor predeterminado del parámetro [ innodb\$1adaptive\$1hash\$1index](https://mariadb.com/kb/en/innodb-system-variables/#innodb_adaptive_hash_index) ha cambiado a `OFF` (`0`).
  + El valor predeterminado del parámetro [ innodb\$1checksum\$1algorithm](https://mariadb.com/kb/en/innodb-system-variables/#innodb_checksum_algorithm) ha cambiado a `full_crc32`.
  + El valor predeterminado del parámetro [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size) ha cambiado a 2 GB. 

Para ver una lista de todas las características de la versión 10.5 de MariaDB y la documentación respectiva, consulte [Changes & Improvements in MariaDB 10.5 (Cambios y mejoras de la versión 10.5 de MariaDB)](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/) y [Release Notes - MariaDB 10.5 Series (Notas de la versión: Serie 10.5 de MariaDB)](https://mariadb.com/kb/en/release-notes-mariadb-105-series/), en el sitio web de MariaDB. 

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md). 

### Compatibilidad con MariaDB 10.4 en Amazon RDS
<a name="MariaDB.Concepts.FeatureSupport.10-4"></a>

Amazon RDS admite las siguientes nuevas características de sus instancias de base de datos en las que se ejecuta la versión de MariaDB 10.4 o posterior: 
+ **Mejoras en la seguridad de la cuenta de usuario** – Mejoras del [vencimiento de la contraseña](https://mariadb.com/kb/en/user-password-expiry/) y [bloqueo de cuentas](https://mariadb.com/kb/en/account-locking/)
+ **Mejoras del optimizador**: [Característica de seguimiento del optimizador](https://mariadb.com/kb/en/optimizer-trace-overview/)
+ **Mejoras de InnoDB** – [Compatibilidad con DROP COLUMN instantánea](https://mariadb.com/kb/en/alter-table/#drop-column) y extensión `VARCHAR` instantánea para `ROW_FORMAT=DYNAMIC` y `ROW_FORMAT=COMPACT` 
+ **Nuevos parámetros** – Incluidos [tcp\$1nodedelay](https://mariadb.com/kb/en/server-system-variables/#tcp_nodelay), [tls\$1version](https://mariadb.com/kb/en/ssltls-system-variables/#tls_version) y [gtid\$1cleanup\$1batch\$1size](https://mariadb.com/kb/en/gtid/#gtid_cleanup_batch_size)

Para ver una lista de todas las características de MariaDB 10.4 y de su documentación, consulte [Changes & Improvements in MariaDB 10.4](https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-104/) y [Release Notes - MariaDB 10.4 Series](https://mariadb.com/kb/en/library/release-notes-mariadb-104-series/) en el sitio web de MariaDB. 

Para ver una lista de las características no admitidas, consulte [Características de MariaDB que no admite Amazon RDS](MariaDB.Concepts.FeatureNonSupport.md). 

# Motores de almacenamiento de MariaDB admitidos en Amazon RDS
<a name="MariaDB.Concepts.Storage"></a>

RDS for MariaDB es compatible con los siguientes motores de almacenamiento.

**Topics**
+ [Motor de almacenamiento InnoDB](#MariaDB.Concepts.Storage.InnoDB)
+ [Motor de almacenamiento MyRocks](#MariaDB.Concepts.Storage.MyRocks)

Otros motores de almacenamiento no son compatibles actualmente con RDS for MariaDB.

## Motor de almacenamiento InnoDB
<a name="MariaDB.Concepts.Storage.InnoDB"></a>

Si bien MariaDB admite varios motores de almacenamiento con diversas capacidades, no todos están optimizados para la recuperación y la durabilidad de los datos. InnoDB es el motor de almacenamiento recomendado para las instancias de base de datos MariaDB en Amazon RDS. Las características de Amazon RDS de recuperación a un momento dado y la restauración de instantáneas requieren un motor de almacenamiento que pueda recuperarse y solo son compatibles con el motor de almacenamiento recomendado para la versión de MariaDB.

Para obtener más información, consulte [InnoDB](https://mariadb.com/kb/en/innodb/).

## Motor de almacenamiento MyRocks
<a name="MariaDB.Concepts.Storage.MyRocks"></a>

El motor de almacenamiento MyRocks está disponible en la versión 10.6 de RDS for MariaDB y versiones posteriores. Antes de utilizar el motor de almacenamiento MyRocks en una base de datos de producción, recomendamos que realice análisis comparativos y pruebas exhaustivas para verificar cualquier beneficio potencial sobre InnoDB para su caso de uso.

El grupo de parámetros predeterminado para la versión 10.6 de MariaDB incluye parámetros de MyRocks. Para obtener más información, consulte [Parámetros de MariaDB](Appendix.MariaDB.Parameters.md) y [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Para crear una tabla que utilice el motor de almacenamiento MyRocks, especifique `ENGINE=RocksDB` en la instrucción `CREATE TABLE`. En el siguiente ejemplo, se crea una tabla que utiliza el motor de almacenamiento MyRocks.

```
CREATE TABLE test (a INT NOT NULL, b CHAR(10)) ENGINE=RocksDB;
```

Se recomienda no ejecutar transacciones que abarquen las tablas InnoDB y MyRocks. MariaDB no garantiza ACID (atomicidad, consistencia, aislamiento, durabilidad) para transacciones entre motores de almacenamiento. Si bien es posible tener tablas InnoDB y MyRocks en una instancia de base de datos, no recomendamos este enfoque, excepto durante la migración de un motor de almacenamiento a otro. Cuando existen tablas InnoDB y MyRocks en una instancia de base de datos, cada motor de almacenamiento tiene su propio grupo de búferes, lo que podría provocar una degradación del rendimiento.

MyRocks no admite aislamiento `SERIALIZABLE` o bloqueos de espacio. Por lo tanto, en general, no puede utilizar MyRocks con replicación basada en instrucciones. Para obtener más información, consulte [MyRocks y replicación](https://mariadb.com/kb/en/myrocks-and-replication/).

En la actualidad, puede modificar solo los siguientes parámetros de MyRocks:
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_block_cache_size](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_block_cache_size)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load_size](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load_size)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect_depth](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect_depth)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_max_latest_deadlocks](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_max_latest_deadlocks)

El motor de almacenamiento MyRocks y el motor de almacenamiento InnoDB pueden competir por la memoria en función de la configuración de los parámetros `rocksdb_block_cache_size` y `innodb_buffer_pool_size`. En algunos casos, es posible que solo tenga la intención de utilizar el motor de almacenamiento MyRocks en una instancia de base de datos determinada. Si es así, recomendamos configurar el parámetro `innodb_buffer_pool_size minimal` en un valor mínimo y configurar el `rocksdb_block_cache_size` lo más alto posible.

Puede acceder a los archivos de registro de MyRocks mediante las operaciones [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBLogFiles.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBLogFiles.html) y [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DownloadDBLogFilePortion.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DownloadDBLogFilePortion.html).

Para obtener más información sobre MyRocks, consulte [MyRocks](https://mariadb.com/kb/en/myrocks/) en el sitio web de MariaDB.

# Calentamiento de caché para MariaDB en Amazon RDS
<a name="MariaDB.Concepts.XtraDBCacheWarming"></a>

El calentamiento de caché de InnoDB puede proporcionar ganancias de rendimiento para la instancia de base de datos de MariaDB al guardar el estado actual del grupo del búfer cuando se cierra la instancia de base de datos y volver a cargar el grupo del búfer desde la información guardada cuando se inicia la instancia de base de datos. Este método elimina la necesidad de que el grupo del búfer "se caliente" con respecto al uso normal de la base de datos y, en su lugar, precarga el grupo del búfer con las páginas de las consultas frecuentes conocidas. Para obtener más información acerca del calentamiento de caché consulte [Volcado y restauración del grupo de búferes](http://mariadb.com/kb/en/mariadb/xtradbinnodb-buffer-pool/#dumping-and-restoring-the-buffer-pool) en la documentación de MariaDB.

El calentamiento de caché se habilita de forma predeterminada en MariaDB 10.3 y en instancias de base de datos superiores. Para habilitarlo, establezca los parámetros `innodb_buffer_pool_dump_at_shutdown` e `innodb_buffer_pool_load_at_startup` en 1 en el grupo de parámetros de la instancia de base de datos. Cambiar los valores de estos parámetros en un grupo de parámetros afecta a todas las instancias de base de datos de MariaDB que utilicen ese grupo de parámetros. Para habilitar el calentamiento de caché para instancias de base de datos de MariaDB concretas, es posible que deba crear un nuevo grupo de parámetros para esas instancias de base de datos. Para obtener información acerca de los grupos de parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

El calentamiento de caché proporciona principalmente un beneficio de desempeño para las instancias de bases de datos que utilizan almacenamiento estándar. Si utiliza almacenamiento PIOPS, normalmente no se observa un beneficio de desempeño significativo.

**importante**  
Si la instancia de base de datos MariaDB no se cierra de forma normal como, por ejemplo, durante una conmutación por error, el estado del grupo del búfer no se guarda en el disco. En este caso, MariaDB carga cualquier archivo de grupo del búfer que esté disponible cuando se reinicia la instancia de base de datos. No es perjudicial, pero el grupo del búfer restaurado podría no reflejar el estado más reciente del grupo del búfer antes del reinicio. Para asegurarse de que tiene un estado reciente del grupo del búfer disponible para calentar la caché de al iniciar, recomendamos que vuelque periódicamente el grupo del búfer "bajo demanda". Puede volcar o cargar el grupo del búfer bajo demanda.  
Puede crear un evento para volcar el grupo del búfer automáticamente a intervalos regulares. Por ejemplo, la siguiente instrucción crea un evento denominado `periodic_buffer_pool_dump` que vuelca el grupo del búfer cada hora.   

```
1. CREATE EVENT periodic_buffer_pool_dump 
2.    ON SCHEDULE EVERY 1 HOUR 
3.    DO CALL mysql.rds_innodb_buffer_pool_dump_now();
```
Para obtener más información, consulte [Events](http://mariadb.com/kb/en/mariadb/stored-programs-and-views-events/) en la documentación de MariaDB.

## Volcado y carga del grupo del búfer bajo demanda
<a name="MariaDB.Concepts.XtraDBCacheWarming.OnDemand"></a>

Puede guardar y cargar la caché de bajo demanda usando los siguientes procedimientos almacenados:
+ Para volcar el estado actual del grupo del búfer en el disco, llame al procedimiento almacenado [mysql.rds\$1innodb\$1buffer\$1pool\$1dump\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_dump_now).
+ Para cargar el estado guardado del grupo del búfer desde el disco, llame al procedimiento almacenado [mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_now).
+ Para cancelar una operación de carga en curso, llame al procedimiento almacenado [mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1abort](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_abort).

# Características de MariaDB que no admite Amazon RDS
<a name="MariaDB.Concepts.FeatureNonSupport"></a>

Las siguientes características de MariaDB no se admiten en Amazon RDS:
+ Motor de almacenamiento S3
+ Complemento de autenticación: GSSAPI
+ Complemento de autenticación: conector Unix
+ AWSComplemento de cifrado de Key Management
+ Replicación retrasada para versiones de MariaDB anteriores a la versión 10.6
+ Cifrado nativo de MariaDB en reposo para InnoDB y Aria

  Puede habilitar el cifrado en reposo para una instancia de base de datos de MariaDB siguiendo las instrucciones en [Cifrado de recursos de Amazon RDS](Overview.Encryption.md).
+ HandlerSocket
+ Tipo de tabla JSON para versiones de MariaDB anteriores a la versión 10.6
+ ColumnStore de MariaDB
+ Clúster Galera de MariaDB
+ Replicación de varios orígenes
+ Motor de almacenamiento MyRocks para versiones de MariaDB anteriores a la versión 10.6
+ Complemento de validación de contraseñas, `simple_password_check` y `cracklib_password_check` para versiones de MariaDB inferiores a 11.4 
+ Motor de almacenamiento Spider
+ Motor de almacenamiento Sphinx
+ Motor de almacenamiento TokuDB
+ Atributos de objetos específicos de motores de almacenamiento, como se describe en [Engine-defined New Table/Field/Index Attributes](http://mariadb.com/kb/en/mariadb/engine-defined-new-tablefieldindex-attributes/) en la documentación de MariaDB
+ Cifrado de tabla y espacio de tabla
+ Complemento Hashicorp Key Management
+ Ejecución de dos actualizaciones en paralelo

Para ofrecer una experiencia de servicio administrado, Amazon RDS no proporciona acceso mediante shell a las instancias de base de datos y restringe el acceso a ciertos procedimientos y tablas del sistema que requieren privilegios avanzados. Amazon RDS permite el acceso a las bases de datos de una instancia de base de datos usando cualquier aplicación cliente de SQL estándar. Amazon RDS no permite el acceso de anfitrión directo a una instancia de base de datos a través de Telnet, Secure Shell (SSH) o conexión a escritorio remoto de Windows. 

# Versiones de MariaDB en Amazon RDS
<a name="MariaDB.Concepts.VersionMgmt"></a>

En MariaDB, los números de la versión se organizan como versión X.Y.Z. En la terminología de Amazon RDS, X.Y denota la versión principal y Z es el número de la versión secundaria. Para implementaciones de Amazon RDS, un cambio de versión se considera principal si cambia el número de la versión principal: por ejemplo, si se pasa de la versión 10.5 a la 10.6. Un cambio de versión se considera secundario si solo cambia el número de la versión secundaria: por ejemplo, si se pasa de la versión 10.6.14 a la 10.6.16.

**Topics**
+ [Versiones secundarias de MariaDB compatibles en Amazon RDS](#MariaDB.Concepts.VersionMgmt.Supported)
+ [Versiones principales de MariaDB compatibles en Amazon RDS](#MariaDB.Concepts.VersionMgmt.ReleaseCalendar)
+ [Trabajo con el entorno de vista previa de bases de datos](#mariadb-working-with-the-database-preview-environment)
+ [MariaDB versión 11.7 en el entorno de vista previa de bases de datos](#mariadb-preview-environment-version-11-7)
+ [Versiones obsoletas para Amazon RDS para MariaDB](#MariaDB.Concepts.DeprecatedVersions)

## Versiones secundarias de MariaDB compatibles en Amazon RDS
<a name="MariaDB.Concepts.VersionMgmt.Supported"></a>

Amazon RDS admite actualmente las siguientes versiones secundarias de MariaDB. 

**nota**  
Las fechas con solo un mes y un año son aproximadas y se actualizan con una fecha exacta cuando se conoce.

En la siguiente tabla se muestran las versiones secundarias de MariaDB 11.8 compatibles actualmente con Amazon RDS. 


| Versión del motor MariaDB | Fecha de versiones de la comunidad | Fecha de versión de RDS | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | 
|  11.8.6  | 04 de febrero de 2026 |  10 de febrero de 2026  |  Febrero de 2027  | 
|  11.8.5  | 14 de noviembre de 2025 |  20 de noviembre de 2025  |  Noviembre de 2026  | 
|  11.8.3  | 6 de agosto de 2025 |  25 de agosto de 2025  |  Septiembre de 2026  | 

En la siguiente tabla se muestran las versiones secundarias de MariaDB 11.4 compatibles actualmente con Amazon RDS. 


| Versión del motor MariaDB | Fecha de versiones de la comunidad | Fecha de versión de RDS | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | 
|  11.4.10  | 04 de febrero de 2026 |  10 de febrero de 2026  |  Febrero de 2027  | 
|  11.4.9  | 6 de noviembre de 2025 |  18 de noviembre de 2025  |  Noviembre de 2026  | 
|  11.4.8  | 6 de agosto de 2025 |  13 de agosto de 2025  |  Septiembre de 2026  | 
|  11.4.7  | 22 de mayo de 2025 |  4 de junio de 2025  |  Septiembre de 2026  | 
|  11.4.5  | 4 de febrero de 2025 |  24 de febrero de 2025  |  Mayo de 2026  | 
|  11.4.4  | 1 de noviembre de 2024 |  20 de diciembre de 2024  |  Mayo de 2026  | 
|  11.4.3  |  8 de agosto de 2024  |  15 de octubre de 2024  |  Mayo de 2026  | 

En la siguiente tabla se muestran las versiones secundarias de MariaDB 10.11 compatibles actualmente con Amazon RDS. 


| Versión del motor MariaDB | Fecha de versiones de la comunidad | Fecha de versión de RDS | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | 
|  10.11.16  | 04 de febrero de 2026 |  10 de febrero de 2026  |  Febrero de 2027  | 
|  10.11.15  | 6 de noviembre de 2025 | 18 de noviembre de 2025 |  Noviembre de 2026  | 
|  10.11.14  | 6 de agosto de 2025 | 13 de agosto de 2025 |  Septiembre de 2026  | 
|  10.11.13  | 22 de mayo de 2025 | 4 de junio de 2025 |  Septiembre de 2026  | 
|  10.11.11  | 4 de febrero de 2025 | 24 de febrero de 2025 |  Mayo de 2026  | 
|  10.11.10  |  1 de noviembre de 2024  |  20 de diciembre de 2024  |  Mayo de 2026  | 
|  10.11.9  |  8 de agosto de 2024  |  4 de septiembre de 2024  |  Mayo de 2026  | 

En la siguiente tabla se muestran las versiones secundarias de MariaDB 10.6 compatibles actualmente con Amazon RDS. 


| Versión del motor MariaDB | Fecha de versiones de la comunidad | Fecha de versión de RDS | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | 
|  10.6.25  | 04 de febrero de 2026 |  10 de febrero de 2026  |  Julio de 2016  | 
|  10.6.24  |  6 de noviembre de 2025  |  18 de noviembre de 2025  |  Julio de 2016  | 
|  10.6.23  |  6 de agosto de 2025  |  13 de agosto de 2025  |  Julio de 2016  | 
|  10.6.22  |  6 de mayo de 2025  |  20 de mayo de 2025  |  Julio de 2016  | 
|  10.6.21  |  4 de febrero de 2025  |  24 de febrero de 2025  |  Mayo de 2026  | 
|  10.6.20  |  1 de noviembre de 2024  |  20 de diciembre de 2024  |  Mayo de 2026  | 
|  10.6.19  |  8 de agosto de 2024  |  4 de septiembre de 2024  |  Mayo de 2026  | 

En la siguiente tabla se muestran las versiones secundarias de MariaDB 10.5 compatibles actualmente con Amazon RDS. 


| Versión del motor MariaDB | Fecha de versiones de la comunidad | Fecha de versión de RDS | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | 
|  10.5.29  |  6 de mayo de 2025  |  20 de mayo de 2025  |  Junio de 2026  | 
|  10.5.28  |  4 de febrero de 2025  |  24 de febrero de 2025  |  Junio de 2026  | 
|  10.5.27  |  1 de noviembre de 2024  |  20 de diciembre de 2024  |  Mayo de 2026  | 

Puede especificar cualquier versión de MariaDB admitida actualmente al crear una nueva instancia de base de datos. Puede especificar la versión principal (como MariaDB 10.5) y versiones secundarias compatibles con la versión principal especificada. Si no se especifica ninguna versión, Amazon RDS cambia de forma predeterminada a una versión admitida, normalmente la más reciente. Si se especifica una versión principal pero no una versión secundaria, Amazon RDS usa de manera predeterminada una versión reciente de la versión principal especificada. Para ver una lista de las versiones admitidas, así como de las versiones predeterminadas para instancias de bases de datos recién creadas, utilice el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html) de la AWS CLI.

Por ejemplo, para enumerar las versiones del motor compatibles con RDS para MariaDB, ejecute el siguiente comando de la CLI:

```
aws rds describe-db-engine-versions --engine mariadb --query "*[].{Engine:Engine,EngineVersion:EngineVersion}" --output text
```

La versión predeterminada de MariaDB puede variar según la Región de AWS. Para crear una instancia de base de datos con una versión secundaria concreta, especifique la versión secundaria durante la creación de la instancia de base de datos. Puede determinar la versión secundaria predeterminada de una Región de AWS mediante el siguiente comando de la AWS CLI:

```
aws rds describe-db-engine-versions --default-only --engine mariadb --engine-version major_engine_version --region region --query "*[].{Engine:Engine,EngineVersion:EngineVersion}" --output text
```

Reemplace *major\$1engine\$1version* por la versión principal del motor y reemplace *region* por la Región de AWS. Por ejemplo, el siguiente comando de la AWS CLI devuelve la versión secundaria predeterminada del motor de MariaDB para la versión principal 10.5 y la Región de AWS de Oeste de EE. UU. (Oregón) (us-west-2):

```
aws rds describe-db-engine-versions --default-only --engine mariadb --engine-version 10.5 --region us-west-2 --query "*[].{Engine:Engine,EngineVersion:EngineVersion}" --output text
```

### Versiones secundarias de MariaDB en Amazon RDS
<a name="MySQL.Concepts.VersionMgmt.Supported.Minor"></a>

**Topics**
+ [MariaDB versión 11.8.6](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.6)
+ [MariaDB versión 11.8.5](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.5)
+ [MariaDB versión 11.8.3](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.3)
+ [MariaDB versión 11.4.10](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.10)
+ [MariaDB versión 11.4.9](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.9)
+ [MariaDB versión 11.4.8](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.8)
+ [MariaDB versión 11.4.7](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.7)
+ [MariaDB versión 11.4.5](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.5)
+ [Versiones de MariaDB 11.4.4](#MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.4)
+ [MariaDB versión 10.11.16](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.16)
+ [MariaDB versión 10.11.15](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.15)
+ [MariaDB versión 10.11.14](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.14)
+ [MariaDB versión 10.11.13](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.13)
+ [MariaDB versión 10.11.11](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.11)
+ [Versión de MariaDB 10.11.10](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.10)
+ [MariaDB versión 10.6.25](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.25)
+ [MariaDB versión 10.6.24](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.24)
+ [MariaDB versión 10.6.23](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.23)
+ [MariaDB versión 10.6.22](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.22)
+ [MariaDB versión 10.6.21](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.21)
+ [Versión de MariaDB 10.6.20](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.20)
+ [MariaDB versión 10.5.29](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.29)
+ [MariaDB versión 10.5.28](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.28)
+ [Versiones de MariaDB 10.5.27](#MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.27)

#### MariaDB versión 11.8.6
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.6"></a>

La versión 11.8.6 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025c`.
+ Se ha solucionado un problema que podía provocar que algunas instrucciones SQL no se registraran en el registro de auditoría.

#### MariaDB versión 11.8.5
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.5"></a>

La versión 11.8.5 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 11.8.3
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.8.3"></a>

La versión 11.8.3 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ **Nuevo valor predeterminado para el parámetro**: el valor predeterminado del parámetro `require_secure_transport` ha cambiado de `0` a `1`, por lo que se imponen conexiones de transporte seguras de forma predeterminada. Para obtener más información, consulte [Necesidad de uso de SSL/TLS para todas las conexiones a una instancia de base de datos de MariaDB en Amazon RDS](mariadb-ssl-connections.require-ssl.md). 

#### MariaDB versión 11.4.10
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.10"></a>

La versión 11.4.10 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025c`.
+ Se ha solucionado un problema que podía provocar que algunas instrucciones SQL no se registraran en el registro de auditoría.

#### MariaDB versión 11.4.9
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.9"></a>

La versión 11.4.9 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 11.4.8
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.8"></a>

La versión 11.4.8 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 11.4.7
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.7"></a>

La versión 11.4.7 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025b`.

#### MariaDB versión 11.4.5
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.5"></a>

La versión 11.4.5 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025a`.

#### Versiones de MariaDB 11.4.4
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.11.4.4"></a>

La versión 11.4.4 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se han revertido dos cambios en la comunidad de MariaDB que provocan el error de la recuperación en un momento dado (PITR). Para obtener más información, consulte el error [MDEV-35528 de MariaDB en Jira Server](https://jira.mariadb.org/browse/MDEV-35528).

#### MariaDB versión 10.11.16
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.16"></a>

La versión 10.11.16 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025c`.
+ Se ha solucionado un problema que podía provocar que algunas instrucciones SQL no se registraran en el registro de auditoría.

#### MariaDB versión 10.11.15
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.15"></a>

La versión 10.11.15 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 10.11.14
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.14"></a>

La versión 10.11.14 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 10.11.13
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.13"></a>

La versión 10.11.13 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025b`.

#### MariaDB versión 10.11.11
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.11"></a>

La versión 10.11.11 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025a`.

#### Versión de MariaDB 10.11.10
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.11.10"></a>

La versión 10.11.10 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se han revertido dos cambios en la comunidad de MariaDB que provocan el error de la recuperación en un momento dado (PITR). Para obtener más información, consulte el error [MDEV-35528 de MariaDB en Jira Server](https://jira.mariadb.org/browse/MDEV-35528).

#### MariaDB versión 10.6.25
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.25"></a>

La versión 10.6.25 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025c`.
+ Se ha solucionado un problema que podía provocar que algunas instrucciones SQL no se registraran en el registro de auditoría.

#### MariaDB versión 10.6.24
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.24"></a>

La versión 10.6.24 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 10.6.23
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.23"></a>

La versión 10.6.23 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

#### MariaDB versión 10.6.22
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.22"></a>

La versión 10.6.22 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025b`.

#### MariaDB versión 10.6.21
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.21"></a>

La versión 10.6.21 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025a`.

#### Versión de MariaDB 10.6.20
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.6.20"></a>

La versión 10.6.20 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se han revertido dos cambios en la comunidad de MariaDB que provocan el error de la recuperación en un momento dado (PITR). Para obtener más información, consulte el error [MDEV-35528 de MariaDB en Jira Server](https://jira.mariadb.org/browse/MDEV-35528).

#### MariaDB versión 10.5.29
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.29"></a>

La versión 10.5.29 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025b`.

#### MariaDB versión 10.5.28
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.28"></a>

La versión 10.5.28 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se ha actualizado la información de zona horaria para basarla en `tzdata2025a`.

#### Versiones de MariaDB 10.5.27
<a name="MariaDB.Concepts.VersionMgmt.Supported.Minor.10.5.27"></a>

La versión 10.5.27 de MariaDB ya está disponible en Amazon RDS. Esta versión contiene correcciones y mejoras añadidas por la comunidad MariaDB y Amazon RDS.

**Nuevas características y mejoras**
+ Se han revertido dos cambios en la comunidad de MariaDB que provocan el error de la recuperación en un momento dado (PITR). Para obtener más información, consulte el error [MDEV-35528 de MariaDB en Jira Server](https://jira.mariadb.org/browse/MDEV-35528).

## Versiones principales de MariaDB compatibles en Amazon RDS
<a name="MariaDB.Concepts.VersionMgmt.ReleaseCalendar"></a>

Las versiones principales de RDS para MariaDB permanecen disponibles al menos hasta el final de la vida útil de la comunidad para la versión de la comunidad correspondiente. Puede utilizar las siguientes fechas para planificar sus ciclos de prueba y actualización. Si Amazon amplía la compatibilidad con una versión de RDS para MariaDB durante más tiempo de lo previsto originalmente, esta tabla se actualizará para reflejar la fecha posterior. 

**nota**  
Las fechas en las que solo aparece el mes y el año son aproximadas y se cambiarán por la fecha exacta cuando se conozca.  
También puede ver información sobre las fechas de soporte de las versiones principales del motor ejecutando el comando [describe-db-major-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-major-engine-versions.html) de la AWS CLI o mediante la operación de la API de RDS [DescribeDBMajorEngineVersions](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBMajorEngineVersions.html).


| Versión principal de MariaDB | Fecha de versión de la comunidad | Fecha de versiones de RDS | Fecha de fin de vida útil de la comunidad | Fecha de fin de soporte estándar de RDS | 
| --- | --- | --- | --- | --- | 
|  MariaDB 11.8  |  6 de agosto de 2025  |  25 de agosto de 2025  |  Junio de 2030  |  Junio de 2030  | 
|  MariaDB 11.4  |  8 de agosto de 2024  |  15 de octubre de 2024  |  Mayo de 2029  |  Mayo de 2029  | 
|  MariaDB 10.11  |  16 de febrero de 2023  |  21 de agosto de 2023  |  16 de febrero de 2028  |  Febrero de 2028  | 
|  MariaDB 10.6  |  6 de julio de 2021  |  3 de febrero de 2022  |  6 de julio de 2026  |  Agosto de 2026  | 
|  MariaDB 10.5  |  24 de junio de 2020  |  21 de enero de 2021  |  24 de junio de 2025  |  Agosto de 2026  | 

## Trabajo con el entorno de vista previa de bases de datos
<a name="mariadb-working-with-the-database-preview-environment"></a>

Las instancias de base de datos de RDS para MariaDB en el entorno de vista previa de bases de datos son funcionalmente similares a otras instancias de bases de datos de RDS para MariaDB. Sin embargo, no puede usar el entorno de vista previa de bases de datos para las cargas de trabajo de producción.

Los entornos de vista previa presentan las siguientes limitaciones:
+ Amazon RDS elimina todas las instancias de base de datos 60 días después de crearlas, junto con las copias de seguridad e instantáneas.
+ Solo puede utilizar almacenamiento SSD de uso general y SSD IOPS provisionadas. 
+ No puede obtener ayuda de Soporte con instancias de bases de datos. En su lugar, puede publicar sus preguntas en la comunidad de preguntas y respuestas administrada de AWS, [AWS re:Post](https://repost.aws/tags/TAsibBK6ZeQYihN9as4S_psg/amazon-relational-database-service).
+ No puede copiar una instantánea de una instancia de base de datos en un entorno de producción.

Las siguientes opciones son compatibles con la vista previa.
+ Puede crear instancias de base de datos con las clases de instancias de base de datos db.m6i, db.r6i, db.m6g, db.m5, db.t3, db.r6g y db.r5. Para obtener más información sobre las clases de instancias de RDS, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md). 
+ Puede utilizar implementaciones single-AZ y multi-AZ.
+ Puede utilizar las funciones estándar de volcado y carga de MariaDB para importar bases de datos desde el entorno de la vista previa de base de datos o para exportarlas a este.

### Características no compatibles en el entorno de vista previa de bases de datos
<a name="mariadb-preview-environment-exclusions"></a>

Las siguientes características no están disponibles en el entorno de vista previa de bases de datos:
+ Copia de instantáneas entre regiones
+ Réplicas de lectura entre regiones
+ Proxy RDS

### Creación de una nueva instancia de base de datos en el entorno de vista previa de bases de datos
<a name="mariadb-create-db-instance-in-preview-environment"></a>

Puede crear una instancia de base de datos en el entorno de vista previa de la base de datos utilizando Consola de administración de AWS, AWS CLI o la API de RDS.

#### Consola
<a name="mariadb-create-db-instance-in-preview-environment.CON"></a>

**Para crear una instancia de base de datos en el entorno de vista previa de bases de datos**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Elija **Panel** en el panel de navegación.

1. En la página **Panel**, busque la sección **Database Preview Environment**, tal y como se muestra en la siguiente imagen.  
![\[La sección Entorno de vista previa de bases de datos con un enlace en la consola de Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/preview-environment-dashboard.png)

   Puede navegar directamente a [Database Preview Environment](https://us-east-2.console.aws.amazon.com/rds-preview/home?region=us-east-2#). Antes de continuar, debe reconocer y aceptar las limitaciones.   
![\[El cuadro de diálogo Acuerdo de servicio de Entorno de vista previa de bases de datos para conocer las limitaciones.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/preview-environment-console.png)

1. Para crear la instancia de base de datos de RDS para MariaDB, siga el mismo proceso que para crear cualquier instancia de base de datos de Amazon RDS. Para obtener más información, consulte el procedimiento [Consola](USER_CreateDBInstance.md#USER_CreateDBInstance.CON) en [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

#### AWS CLI
<a name="mariadb-create-db-instance-in-preview-environment.CLI"></a>

Para crear una instancia de base de datos en el entorno de vista previa de base de datos mediante la AWS CLI, utilice el siguiente punto de conexión.

```
rds-preview.us-east-2.amazonaws.com
```

Para crear la instancia de base de datos de RDS para MariaDB, siga el mismo proceso que para crear cualquier instancia de base de datos de Amazon RDS. Para obtener más información, consulte el procedimiento [AWS CLI](USER_CreateDBInstance.md#USER_CreateDBInstance.CLI) en [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

#### API de RDS
<a name="mariadb-create-db-instance-in-preview-environment.API"></a>

Para crear una instancia de base de datos en el entorno de vista previa de base de datos mediante la API de RDS, utilice el siguiente punto de conexión.

```
rds-preview.us-east-2.amazonaws.com
```

Para crear la instancia de base de datos de RDS para MariaDB, siga el mismo proceso que para crear cualquier instancia de base de datos de Amazon RDS. Para obtener más información, consulte el procedimiento [API de RDS](USER_CreateDBInstance.md#USER_CreateDBInstance.API) en [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

## MariaDB versión 11.7 en el entorno de vista previa de bases de datos
<a name="mariadb-preview-environment-version-11-7"></a>

MariaDB versión 11.7 ya está disponible en el entorno de vista previa de bases de datos de Amazon RDS. MariaDB versión 11.7 contiene varias mejoras que se describen en [Changes and improvements in MariaDB 11.7](https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-7/). Esta versión también incluye compatibilidad para el tipo de datos vectoriales, la indexación y la búsqueda. Para obtener más información, consulte [Información general del vector](https://mariadb.com/kb/en/vector-overview/) en la documentación de MariaDB.

Puede usar el entorno de vista previa de bases de datos para probar sus cargas de trabajo con respecto a esta versión antes de que esté disponible en todas las Regiones de AWS para las cargas de trabajo de producción. Para obtener información acerca del entorno de vista previa de base de datos, consulte [Trabajo con el entorno de vista previa de bases de datos](#mariadb-working-with-the-database-preview-environment). Para acceder al entorno de vista previa desde la consola, seleccione [rds-preview/](https://console.aws.amazon.com/rds-preview/).

## Versiones obsoletas para Amazon RDS para MariaDB
<a name="MariaDB.Concepts.DeprecatedVersions"></a>

Las versiones 10.0, 10.1, 10.2 y 10.3 de Amazon RDS para MariaDB están obsoletas.

Para obtener información sobre la política de obsolescencia de Amazon RDS para MariaDB, consulte las [preguntas frecuentes sobre Amazon RDS](https://aws.amazon.com/rds/faqs/).

# Conexión a la instancia de base de datos de MariaDB
<a name="USER_ConnectToMariaDBInstance"></a>

Después de que Amazon RDS aprovisione una instancia de base de datos, puede usar cualquier utilidad o aplicación cliente estándar de MariaDB para conectarse a la instancia. En la cadena de conexión, especifique la dirección del sistema de nombre de dominio (DNS) del punto de enlace de la instancia de base de datos como el parámetro del host. Especifique también el número de puerto del punto de enlace de la instancia de base de datos como el parámetro del puerto.

Puede conectarse a una instancia de base de datos de Amazon RDS for MariaDB mediante herramientas como la utilidad de línea de comandos de MySQL. Para obtener más información acerca del uso de la utilidad de línea de comandos de MySQL, consulte [mysql command-line client](http://mariadb.com/kb/en/mariadb/mysql-command-line-client/) en la documentación de MariaDB. Heidi es una de las aplicaciones basadas en interfaz gráfica de usuario (GUI) que puede utilizar para conectarse. Para obtener más información, consulte la página [Download HeidiSQL](http://www.heidisql.com/download.php). Para obtener información sobre la instalación de MySQL (incluida la utilidad de línea de comandos de MySQL), consulte [Installing and upgrading MySQL (Instalación y actualización de MySQL)](https://dev.mysql.com/doc/refman/8.0/en/installing.html). 

La mayoría de las distribuciones de Linux incluyen el cliente MariaDB en lugar del cliente Oracle MySQL. Para instalar el cliente de línea de comandos de MySQL en Amazon Linux 2023, ejecute el siguiente comando:

```
sudo dnf install mariadb105
```

Para instalar el cliente de línea de comandos de MySQL en Amazon Linux 2, ejecute el siguiente comando:

```
sudo yum install mariadb
```

Para instalar la utilidad de línea de comandos de MySQL en la mayoría de las distribuciones Linux basadas en DEB, ejecute el siguiente comando:

```
apt-get install mariadb-client
```

Para verificar la versión de la utilidad de línea de comandos de MySQL, ejecute el siguiente comando:

```
mysql --version
```

Para leer la documentación de MySQL de la versión actual del cliente, ejecute el siguiente comando:

```
man mysql
```

Para conectarse a una instancia de base de datos desde fuera de una nube virtual privada (VPC) basada en Amazon VPC, la instancia de base de datos debe ser accesible públicamente. Además, el acceso debe concederse mediante las reglas entrantes del grupo de seguridad de la instancia de base de datos y deben cumplirse otros requisitos. Para obtener más información, consulte [No puede conectarse a la instancia de base de datos de Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

Puede utilizar el cifrado SSL en las conexiones a una instancia de base de datos de MariaDB. Para obtener información, consulte [Compatibilidad con SSL/TLS para instancias de base de datos de MariaDB en Amazon RDS](MariaDB.Concepts.SSLSupport.md).

Para buscar una instancia de base de datos de RDS para MariaDB y conectarse a ella, consulte los siguientes temas.

**Topics**
+ [Búsqueda de la información de conexión para una instancia de base de datos de MariaDB](USER_ConnectToMariaDBInstance.EndpointAndPort.md)
+ [Conexión desde el cliente de línea de comandos de MySQL (sin cifrar) de RDS para MariaDB](USER_ConnectToMariaDBInstance.CLI.md)
+ [Conexión a RDS para MariaDB con el controlador JDBC de AWS y el controlador Python de AWS;](MariaDB.Connecting.Drivers.md)
+ [Solución de problemas de conexiones a la instancia de base de datos MariaDB](USER_ConnectToMariaDBInstance.Troubleshooting.md)

# Búsqueda de la información de conexión para una instancia de base de datos de MariaDB
<a name="USER_ConnectToMariaDBInstance.EndpointAndPort"></a>

La información de conexión de una instancia de base de datos incluye su punto de enlace, puerto y un usuario de base de datos válido, como el usuario maestro. Por ejemplo, supongamos que un valor de punto de enlace es `mydb.123456789012.us-east-1.rds.amazonaws.com`. En este caso, el valor del puerto es `3306` y el usuario de la base de datos es `admin`. Dada esta información, se especifican los siguientes valores en una cadena de conexión:
+ Para nombre de host o host o nombre DNS, especifique `mydb.123456789012.us-east-1.rds.amazonaws.com`.
+ Para el puerto, especifique `3306`.
+ Para el usuario, especifique `admin`.

Para conectarse a una instancia de base de datos, utilice cualquier cliente para un motor de base de datos de MariaDB. Por ejemplo, puede usar la utilidad de línea de comandos de MySQL o MySQL Workbench.

Para buscar la información de conexión de una instancia de base de datos, puede utilizar la Consola de administración de AWS, el comando de [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) de la AWS Command Line Interface (AWS CLI) o la operación de la API de Amazon RDS [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) para enumerar sus detalles. 

## Consola
<a name="USER_ConnectToMariaDBInstance.EndpointAndPort.Console"></a>

**Para buscar la información de conexión para una instancia de base de datos en Consola de administración de AWS**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Databases (Bases de datos)** para ver una lista de las instancias de base de datos.

1. Seleccione el nombre de la instancia de base de datos de MariaDB para mostrar sus detalles.

1. En la pestaña **Connectivity & security (Conectividad y seguridad)**, copie el punto de enlace. También anote el número de puerto. Necesita el punto de enlace y el número de puerto para conectarse a la instancia de base de datos.   
![\[El punto de conexión y el puerto de una instancia de base de datos en la consola de Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/endpoint-port.png)

1. Si necesita encontrar el nombre de usuario maestro, elija la ficha **Configuration (Configuración)** y vea el valor de **Master username (Nombre de usuario maestro)** .

## AWS CLI
<a name="USER_ConnectToMariaDBInstance.EndpointAndPort.CLI"></a>

Para encontrar la información de conexión para una instancia de base de datos MariaDB usando la AWS CLI, ejecute el comando [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). En la llamada, consulte el ID de instancia de base de datos, el punto de enlace, el puerto y el nombre de usuario maestro.

Para Linux, macOS o Unix:

```
aws rds describe-db-instances \
  --filters "Name=engine,Values=mariadb" \
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"
```

Para Windows:

```
aws rds describe-db-instances ^
  --filters "Name=engine,Values=mariadb" ^
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"
```

El resultado debería ser similar al siguiente.

```
[
    [
        "mydb1",
        "mydb1.123456789012.us-east-1.rds.amazonaws.com",
        3306,
        "admin"
    ],
    [
        "mydb2",
        "mydb2.123456789012.us-east-1.rds.amazonaws.com",
        3306,
        "admin"
    ]
]
```

## API de RDS
<a name="USER_ConnectToMariaDBInstance.EndpointAndPort.API"></a>

Para buscar la información de conexión de una instancia de base de datos mediante la API Amazon RDS, llame a la operación [DescribedBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) . En el resultado, busque los valores de la dirección del punto de enlace, el puerto del punto de enlace y el nombre de usuario maestro. 

# Conexión desde el cliente de línea de comandos de MySQL (sin cifrar) de RDS para MariaDB
<a name="USER_ConnectToMariaDBInstance.CLI"></a>

**importante**  
Utilice sólo una conexión MySQL sin cifrar cuando el cliente y el servidor están en la misma VPC y la red es de confianza. Para obtener información sobre el uso de de conexiones cifradas, consulte [Conexión a la instancia de base de datos de MariaDB en Amazon RDS con SSL/TLS desde el cliente de línea de comandos de MySQL (cifrado)](USER_ConnectToMariaDBInstanceSSL.CLI.md).

Para conectarse a una instancia de base de datos mediante la utilidad de línea de comandos de MySQL, ingrese el siguiente comando en un símbolo del sistema en un equipo cliente. Al hacerlo, se conecta a una base de datos en una instancia de base de datos MariaDB. Sustituya el nombre DNS (punto de enlace) de la instancia de base de datos por *`<endpoint>`* y el nombre de usuario maestro que utilizó para *`<mymasteruser>`*. Proporcione la contraseña maestra que utilizó cuando se le solicite una contraseña.

```
mysql -h <endpoint> -P 3306 -u <mymasteruser> -p
```

Una vez especificada la contraseña del usuario, verá un resultado similar al siguiente.

```
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.6.10-MariaDB-log Source distribution
 
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
  
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  
MariaDB [(none)]>
```

# Conexión a RDS para MariaDB con el controlador JDBC de AWS y el controlador Python de AWS;
<a name="MariaDB.Connecting.Drivers"></a>

Conéctese a RDS para las instancias de base de datos de MariaDB con el controlador JDBC de AWS y el controlador Python de AWS. Para obtener más información, consulte los siguientes temas.

**Topics**
+ [Conexión a RDS para MariaDB con el controlador JDBC de Amazon Web Services (AWS)](#MariaDB.Connecting.JDBCDriver)
+ [Conexión a RDS para MariaDB con el controlador de Python de Amazon Web Services (AWS)](#MariaDB.Connecting.PythonDriver)

## Conexión a RDS para MariaDB con el controlador JDBC de Amazon Web Services (AWS)
<a name="MariaDB.Connecting.JDBCDriver"></a>

El controlador JDBC de Amazon Web Services (AWS) se ha diseñado como un contenedor JDBC avanzado. Este contenedor complementa y amplía la funcionalidad del controlador JDBC existente. El controlador se admite con el controlador Connector/J de la comunidad MySQL y el controlador Connector/J de la comunidad MariaDB.

Para instalar el controlador JDBC de AWS, añada el archivo .jar del controlador JDBC de AWS (ubicado en la aplicación `CLASSPATH`) y conserve las referencias al controlador de la comunidad correspondiente. Actualice el prefijo de la URL de conexión correspondiente de la siguiente manera:
+ `jdbc:mysql://` De a `jdbc:aws-wrapper:mysql://`
+ `jdbc:mariadb://` De a `jdbc:aws-wrapper:mariadb://`

Para obtener más información sobre el controlador JDBC de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador JDBC de [Amazon Web Services (AWS)](https://github.com/awslabs/aws-advanced-jdbc-wrapper).

## Conexión a RDS para MariaDB con el controlador de Python de Amazon Web Services (AWS)
<a name="MariaDB.Connecting.PythonDriver"></a>

El controlador de Python de Amazon Web Services (AWS) se ha diseñado como un contenedor de Python avanzado. Este contenedor complementa y amplía la funcionalidad del controlador de Psycopg de código abierto. El controlador de Python de AWS se admite con las versiones 3.8 y posteriores de Python. Puede instalar el paquete de `aws-advanced-python-wrapper` mediante el comando `pip`, junto con los paquetes de código abierto de `psycopg`.

Para obtener más información sobre el controlador de Python de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador de Python de [Amazon Web Services (AWS)](https://github.com/awslabs/aws-advanced-python-wrapper).

# Solución de problemas de conexiones a la instancia de base de datos MariaDB
<a name="USER_ConnectToMariaDBInstance.Troubleshooting"></a>

Hay dos causas frecuentes de errores de conexión a una instancia de base de datos nueva:
+ La instancia de base de datos se creó usando un grupo de seguridad que no autoriza las conexiones desde el dispositivo o la instancia Amazon EC2 en la que se está ejecutando la utilidad o la aplicación de MariaDB. La instancia de base de datos debe tener un grupo de seguridad de VPC que autorice las conexiones. Para obtener más información, consulte [VPC de Amazon y Amazon RDS](USER_VPC.md).

  Puede añadir o editar una regla de entrada en el grupo de seguridad. Para **Source (Origen)**, elija **My IP (Mi IP)**. Esto permite el acceso a la instancia de base de datos desde la dirección IP detectada en su navegador.
+ La instancia de base de datos se creó con el puerto predeterminado 3306, y su compañía tiene reglas de firewall que bloquean las conexiones a ese puerto desde los dispositivos de la red de la organización. Para solucionar este error, vuelva a crear la instancia con un puerto diferente.

Para obtener más información sobre problemas de conexión, consulte [No puede conectarse a la instancia de base de datos de Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

# Protección de las conexiones de instancias de base de datos MariaDB
<a name="securing-mariadb-connections"></a>

Administre la seguridad de las instancias de base de datos MariaDB.

**Topics**
+ [Seguridad de MariaDB en Amazon RDS](MariaDB.Concepts.UsersAndPrivileges.md)
+ [Uso de complementos de validación de contraseñas de RDS para MariaDB](MariaDB.Concepts.PasswordValidationPlugins.md)
+ [Cifrado de conexiones de cliente con SSL/TLS a instancias de base de datos de MariaDB en Amazon RDS](mariadb-ssl-connections.md)
+ [Actualización de aplicaciones para la conexión a las instancias de MariaDB con los nuevos certificados SSL/TLS](ssl-certificate-rotation-mariadb.md)

# Seguridad de MariaDB en Amazon RDS
<a name="MariaDB.Concepts.UsersAndPrivileges"></a>

La seguridad de las instancias de bases de datos de MariaDB se administra en tres niveles:
+ AWS Identity and Access Management controla quién puede realizar acciones de administración de Amazon RDS en las instancias de base de datos. Cuando se conecta a AWS con credenciales de IAM, la cuenta de IAM debe tener políticas de IAM que concedan los permisos necesarios para realizar operaciones de administración de Amazon RDS. Para obtener más información, consulte [Administración de la identidad y el acceso en Amazon RDS](UsingWithRDS.IAM.md).
+ Al crear una instancia de base de datos, se usa un grupo de seguridad de VPC para controlar qué dispositivos e instancias de Amazon EC2 pueden abrir conexiones al punto de conexión y al puerto de la instancia de base de datos. Puede establecer estas conexiones de puerto y punto de enlace mediante la capa de sockets seguros (SSL) y la seguridad de la capa de transporte (TLS). Además, las reglas del firewall de su compañía pueden controlar si los dispositivos que se ejecutan en ella pueden abrir conexiones a la instancia de base de datos.
+ Una vez que se ha abierto una conexión a una instancia de base de datos de MariaDB, la autenticación del inicio de sesión y los permisos se aplican de la misma forma que en una instancia independiente de MariaDB. Los comandos como `CREATE USER`, `RENAME USER`, `GRANT`, `REVOKE` y `SET PASSWORD` funcionan de la misma forma que en las bases de datos independientes, al igual que la modificación directa de las tablas de los esquemas de las bases de datos.

 Cuando se crea una instancia de base de datos de Amazon RDS, el usuario maestro tiene los siguientes privilegios predeterminados: 
+  `alter` 
+  `alter routine` 
+  `create` 
+  `create routine` 
+  `create temporary tables` 
+  `create user` 
+  `create view` 
+  `delete` 
+  `drop` 
+  `event` 
+  `execute` 
+  `grant option` 
+  `index` 
+  `insert` 
+  `lock tables` 
+  `process` 
+  `references` 
+  `reload` 

  Este privilegio está limitado en instancias de base de datos de MariaDB. No permite el acceso a las operaciones `FLUSH LOGS` o `FLUSH TABLES WITH READ LOCK`.
+  `replication client` 
+  `replication slave` 
+  `select` 
+  `show create routine` 

  Este privilegio solo está disponible en las instancias de base de datos MariaDB que ejecutan la versión 11.4 y versiones posteriores.
+  `show databases` 
+  `show view` 
+  `trigger` 
+  `update` 

Para obtener más información acerca de estos privilegios, consulte [MariaDB User Account Management](http://mariadb.com/kb/en/mariadb/grant/) en la documentación de MariaDB.

**nota**  
Aunque puede eliminar el usuario maestro en una instancia de base de datos, no es recomendable hacerlo. Para volver a crear el usuario maestro, utilice la `ModifyDBInstance` API o el `modify-db-instance` AWS CLI y especifique una nueva contraseña de usuario maestro con el parámetro adecuado. Si no existe el usuario maestro en la instancia, se crea con la contraseña especificada. 

Para proporcionar servicios de administración para cada instancia de base de datos, se crea el usuario `rdsadmin` al crear la instancia de base de datos. Al intentar eliminar la cuenta `rdsadmin` o cambiar su nombre, su contraseña o sus privilegios, se producirá un error.

Para permitir la administración de la instancia de base de datos, los comandos estándar `kill` y `kill_query` se han restringido. Los comandos de Amazon RDS `mysql.rds_kill`, `mysql.rds_kill_query` y `mysql.rds_kill_query_id` se proporcionan para el uso en MariaDB y también en MySQL para que pueda finalizar las sesiones de usuario o las consultas en las instancias de base de datos. 

# Uso de complementos de validación de contraseñas de RDS para MariaDB
<a name="MariaDB.Concepts.PasswordValidationPlugins"></a>

A partir de la versión 11.4 de RDS para MariaDB, puede utilizar los siguientes complementos de validación de contraseñas para mejorar la seguridad de las conexiones de su base de datos:
+ [simple\$1password\$1check](https://mariadb.com/kb/en/simple-password-check-plugin/): comprueba si una contraseña contiene al menos un número específico de caracteres de un tipo concreto.
+ [cracklib\$1password\$1check](https://mariadb.com/kb/en/cracklib_password_check/)[: comprueba si una contraseña aparece en un archivo de diccionario de la biblioteca CrackLib](https://github.com/cracklib/cracklib).

Para habilitar estos complementos, defina el valor del parámetro `simple_password_check` o `cracklib_password_check` en `FORCE_PLUS_PERMANENT` en el grupo de parámetros de base de datos asociado a la instancia de base de datos. Cuando se establece este valor, el complemento no se puede desinstalar mediante la instrucción `UNINSTALL PLUGIN` en tiempo de ejecución.

Para deshabilitar estos complementos, establezca el valor del parámetro `simple_password_check` o `cracklib_password_check` en `OFF` en el grupo de parámetros de base de datos asociado a la instancia de base de datos. Cuando se establece este valor, las reglas de validación del complemento ya no se aplican a las contraseñas nuevas.

Para obtener información acerca de cómo establecer los valores de parámetros en grupos de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

# Cifrado de conexiones de cliente con SSL/TLS a instancias de base de datos de MariaDB en Amazon RDS
<a name="mariadb-ssl-connections"></a>

La capa de conexión segura (SSL) es un protocolo estándar del sector que se utiliza para proteger las conexiones de red entre el cliente y el servidor. Después de la versión 3.0 de SSL, el nombre se cambió por seguridad de la capa de transporte (TLS). Amazon RDS admite el cifrado SSL para las instancias de base de datos MariaDB. Con SSL/TLS puede cifrar una conexión entre el cliente de la aplicación y la instancia de base de datos MariaDB. La compatibilidad con SSL/TLS está disponible en todas las Regiones de AWS.

Con Amazon RDS, puede proteger los datos en tránsito cifrando las conexiones de los clientes a las instancias de base de datos de MariaDB con SSL/TLS, exigiendo el uso de SSL/TLS para todas las conexiones a una instancia de base de datos de MariaDB y conectándose desde el cliente de línea de comandos de MySQL con SSL/TLS (cifrado). En las siguientes secciones, se proporciona orientación sobre la configuración y el uso del cifrado SSL para las instancias de base de datos de MariaDB en Amazon RDS.

**Topics**
+ [Compatibilidad con SSL/TLS para instancias de base de datos de MariaDB en Amazon RDS](MariaDB.Concepts.SSLSupport.md)
+ [Necesidad de uso de SSL/TLS para cuentas de usuario específicas en una instancia de base de datos de MariaDB en Amazon RDS](MariaDB-ssl-connections.require-ssl-users.md)
+ [Necesidad de uso de SSL/TLS para todas las conexiones a una instancia de base de datos de MariaDB en Amazon RDS](mariadb-ssl-connections.require-ssl.md)
+ [Conexión a la instancia de base de datos de MariaDB en Amazon RDS con SSL/TLS desde el cliente de línea de comandos de MySQL (cifrado)](USER_ConnectToMariaDBInstanceSSL.CLI.md)

# Compatibilidad con SSL/TLS para instancias de base de datos de MariaDB en Amazon RDS
<a name="MariaDB.Concepts.SSLSupport"></a>

Amazon RDS crea un certificado de SSL/TLS e instala el certificado en la instancia de base de datos cuando Amazon RDS aprovisiona la instancia. Estos certificados están firmados por una autoridad de certificación. El certificado SSL/TLS incluye el punto de enlace de la instancia de base de datos como nombre común (CN) que el certificado de SSL/TLS debe proteger frente a los ataques de suplantación. 

Un certificado SSL/TLS creado por Amazon RDS es la entidad raíz de confianza y debería funcionar en la mayoría de los casos, pero podría fallar si la aplicación no acepta cadenas de certificados. Si la aplicación no acepta cadenas de certificados, intente utilizar un certificado intermedio para conectarse a la Región de AWS. Por ejemplo, debe utilizar un certificado intermedio para conectarse a las regiones de AWS GovCloud (US) con SSL/TLS.

Para obtener más información acerca de cómo descargar certificados, consulte [Uso de SSL/TLS para cifrar una conexión a una instancia o un clúster de base de datos](UsingWithRDS.SSL.md). Para obtener más información acerca de cómo usar SSL/TLS con MySQL, consulte [Actualización de aplicaciones para la conexión a las instancias de MariaDB con los nuevos certificados SSL/TLS](ssl-certificate-rotation-mariadb.md).

Amazon RDS para MariaDB es compatible con las versiones 1.3, 1.2, 1.1 y 1.0 de la seguridad de la capa de transporte (TLS). La compatibilidad con TLS depende de la versión secundaria de MariaDB. En la tabla siguiente se muestra la compatibilidad de TLS con versiones secundarias de MariaDB.


| Versión de TLS | MariaDB 11.8 | MariaDB 11.4 | MariaDB 10.11 | MariaDB 10.6 | MariaDB 10.5 | MariaDB 10.4 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  TLS 1.3  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  | 
|  TLS 1.2  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  |  Todas las versiones secundarias  | 
|  TLS 1.1  |  No admitido  |  No admitido  |  No admitido  |  10.6.16 y versiones anteriores  |  10.5.23 y versiones anteriores  |  10.4.32 y versiones anteriores  | 
|  TLS 1.0  |  No admitido  |  No admitido  | No admitido | 10.6.16 y versiones anteriores |  10.5.23 y versiones anteriores  |  10.4.32 y versiones anteriores  | 

# Necesidad de uso de SSL/TLS para cuentas de usuario específicas en una instancia de base de datos de MariaDB en Amazon RDS
<a name="MariaDB-ssl-connections.require-ssl-users"></a>

Puede exigir el uso del cifrado SSL/TLS para determinadas conexiones de cuentas de usuario a las instancias de base de datos de MariaDB en Amazon RDS. Proteger la información confidencial del acceso o la interceptación no autorizados es fundamental para hacer cumplir las políticas de seguridad en los casos en los que la confidencialidad de los datos sea importante.

Para exigir el uso de conexiones SSL/TLS en determinadas cuentas de usuarios, utilice una de las siguientes instrucciones, en función de la versión de MySQL, para exigir conexiones SSL/TLS en la cuenta de usuario `encrypted_user`.

Para ello, utilice la siguiente instrucción.

```
ALTER USER 'encrypted_user'@'%' REQUIRE SSL;
```

Para obtener más información acerca de las conexiones SSL/TLS con MariaDB, consulte [Securing Connections for Client and Server](https://mariadb.com/kb/en/securing-connections-for-client-and-server/) (Protección de conexiones para el cliente y el servidor) en la documentación de MariaDB.

# Necesidad de uso de SSL/TLS para todas las conexiones a una instancia de base de datos de MariaDB en Amazon RDS
<a name="mariadb-ssl-connections.require-ssl"></a>

Utilice el parámetro `require_secure_transport` para requerir que todas las conexiones de usuario a su instancia de base de datos de MariaDB utilicen SSL/TLS. Para las versiones 11.4 y anteriores, el parámetro `require_secure_transport` se establece en `OFF` de forma predeterminada. Para 11.8 y versiones posteriores, el valor predeterminado se establece en `ON`, aplicando SSL/TLS para las conexiones a la instancia de base de datos. Puede cambiar el parámetro `require_secure_transport` a `OFF` si se necesitan conexiones no seguras.

**nota**  
El parámetro `require_secure_transport` solo es compatible con las versiones 10.5 y posteriores de MariaDB.

Puede definir el valor del parámetro `require_secure_transport` actualizando el grupo de parámetros de base de datos a su instancia de base de datos. No es necesario reiniciar la instancia de base de datos para que el cambio surta efecto.

Cuando el parámetro `require_secure_transport` se establece en `ON` para un clúster de base de datos, un cliente de base de datos puede conectarse a él si puede establecer una conexión cifrada. De lo contrario, se devuelve al cliente un mensaje de error similar al siguiente:

```
ERROR 1045 (28000): Access denied for user 'USER'@'localhost' (using password: YES | NO)
```

Para obtener información acerca de cómo configurar los parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

Para obtener más información sobre el parámetro `require_secure_transport`, consulte la [documentación de MariaDB](https://mariadb.com/docs/ent/ref/mdb/system-variables/require_secure_transport/).

# Conexión a la instancia de base de datos de MariaDB en Amazon RDS con SSL/TLS desde el cliente de línea de comandos de MySQL (cifrado)
<a name="USER_ConnectToMariaDBInstanceSSL.CLI"></a>

Los parámetros `mysql` del programacliente son ligeramente diferentes si está utilizando la versión de MySQL 5.7, la versión de MySQL 8.0 o la versión de MariaDB.

Para saber qué versión tiene, ejecute el comando `mysql` con la opción de comando `--version`. En el ejemplo siguiente, el resultado muestra que el programa cliente es de MariaDB.

```
$ mysql --version
mysql  Ver 15.1 Distrib 10.5.15-MariaDB, for osx10.15 (x86_64) using readline 5.1
```

La mayoría de las distribuciones de Linux, como Amazon Linux, CentOS, SUSE y Debian han reemplazado MySQL por MariaDB, y la versión de `mysql` en ellos es de MariaDB.

Para conectarse a la instancia de base de datos mediante SSL/TLS, siga estos pasos:

**Para conectarse a una instancia de base de datos mediante SSL/TLS con el cliente de la línea de comandos de MySQL**

1. Descargue un certificado raíz que funcione para todas las Regiones de AWS.

   Para obtener más información acerca de cómo descargar certificados, consulte [Uso de SSL/TLS para cifrar una conexión a una instancia o un clúster de base de datos](UsingWithRDS.SSL.md).

1. Utilice un cliente de línea de comandos de MySQL para conectarse a una instancia de base de datos con cifrado SSL/TLS. Para el parámetro `-h`, escriba el nombre de DNS (punto de conexión) de la instancia de base de datos. Para el parámetro `--ssl-ca`, sustituya el nombre del archivo de certificado SSL/TLS. Para el parámetro `-P`, sustituya el puerto de la instancia de base de datos. Para el parámetro `-u`, sustituya el nombre de usuario de un usuario de base de datos válido, como el usuario maestro. Escriba la contraseña del usuario maestro cuando se le pida.

   En el siguiente ejemplo, se muestra cómo lanzar un cliente con el parámetro `--ssl-ca` con el MariaDB.

   ```
   mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=global-bundle.pem --ssl -P 3306 -u myadmin -p
   ```

   Para exigir que la conexión SSL/TLS verifique el punto de conexión de la instancia de la base de datos en el punto de conexión del certificado SSL/TLS, introduzca el siguiente comando:

   ```
   mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=global-bundle.pem --ssl-verify-server-cert -P 3306 -u myadmin -p
   ```

   En el siguiente ejemplo, se muestra cómo lanzar un cliente con el parámetro `--ssl-ca` con el cliente MySQL 5.7 y versiones posteriores.

   ```
   mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=global-bundle.pem --ssl-mode=REQUIRED -P 3306 -u myadmin -p
   ```

1. Escriba la contraseña del usuario maestro cuando se le pida.

Debería ver un resultado similar a este.

```
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.6.10-MariaDB-log Source distribution
 
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
  
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
```

# Actualización de aplicaciones para la conexión a las instancias de MariaDB con los nuevos certificados SSL/TLS
<a name="ssl-certificate-rotation-mariadb"></a>

El 13 de enero de 2023, Amazon RDS publicó nuevos certificados de entidades de certificación (CA) para la conexión a sus instancias de base de datos de RDS mediante la capa de sockets seguros o seguridad de la capa de transporte (SSL/TLS). Después, puede encontrar la información sobre la actualización de sus aplicaciones para utilizar los nuevos certificados.

Este tema puede ayudarle a determinar si sus aplicaciones precisan una verificación de certificados para conectarse a sus instancias de base de datos. 

**nota**  
Algunas aplicaciones solo están configuradas para conectarse a MariaDB solo si pueden verificar con éxito el certificado del servidor. Para esas aplicaciones, debe actualizar los almacenes de confianza de la aplicación de su cliente para incluir los nuevos certificados de CA.   
Puede especificar los siguientes modos SSL: `disabled`, `preferred` y `required`. Cuando utiliza el modo SSL `preferred` y el certificado de CA no existe o no está actualizado, la conexión vuelve a no utilizar SSL y se sigue conectando correctamente.  
Recomendamos evitar el modo `preferred`. En modo `preferred`, si la conexión encuentra un certificado no válido, deja de usar el cifrado y continúa sin cifrar.

Después actualizar sus certificados de CA en los almacenes de confianza de la aplicación de su cliente, puede rotar los certificados en sus instancias de base de datos. Recomendamos encarecidamente probar estos procedimientos en un entorno de desarrollo o ensayo antes de implementarlos en sus entornos de producción.

Para obtener más información acerca de la rotación de certificados, consulte [Rotar certificados SSL/TLS](UsingWithRDS.SSL-certificate-rotation.md). Para obtener más información acerca de cómo descargar certificados, consulte [Uso de SSL/TLS para cifrar una conexión a una instancia o un clúster de base de datos](UsingWithRDS.SSL.md). Para obtener información sobre el uso de SSL/TLS con las instancias de base de datos de MariaDB, consulte [Compatibilidad con SSL/TLS para instancias de base de datos de MariaDB en Amazon RDS](MariaDB.Concepts.SSLSupport.md).

**Topics**
+ [Determinación de si un cliente necesita una verificación de certificados para conectarse](#ssl-certificate-rotation-mariadb.determining)
+ [Actualización del almacén de confianza de su aplicación](#ssl-certificate-rotation-mariadb.updating-trust-store)
+ [Ejemplo de código Java para el establecimiento de conexiones SSL](#ssl-certificate-rotation-mariadb.java-example)

## Determinación de si un cliente necesita una verificación de certificados para conectarse
<a name="ssl-certificate-rotation-mariadb.determining"></a>

Puede comprobar si los cliente de JDBC y MySQL precisan la verificación de certificados para conectarse.

### JDBC
<a name="ssl-certificate-rotation-mysql.determining-client.jdbc"></a>

El siguiente ejemplo con el conector de MySQL/J 8.0 muestra una manera de comprobar las propiedades de conexión de JDBC de una aplicación para determinar si las conexiones exitosas precisan un certificado válido. Para obtener más información sobre todas las opciones de conexión de JDBC para MySQL, consulte [Propiedades de la configuración](https://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html) en la documentación de MySQL.

Al utilizar el conector de MySQL/J 8.0, una conexión precisa una verificación frente al certificado de CA del servidor si sus propiedades de conexión han configurado `sslMode` como `VERIFY_CA` o `VERIFY_IDENTITY`, como en el siguiente ejemplo.

```
Properties properties = new Properties();
properties.setProperty("sslMode", "VERIFY_IDENTITY");
properties.put("user", DB_USER);
properties.put("password", DB_PASSWORD);
```

**nota**  
Si utiliza MySQL Java Connector v5.1.38 o posterior, o MySQL Java Connector v8.0.9 o posterior para conectarse a sus bases de datos, incluso si no ha configurado explícitamente sus aplicaciones para usar SSL/TLS al conectarse a sus bases de datos, estos controladores cliente utilizan de forma predeterminada SSL/TLS. Además, al utilizar SSL/TLS, realizan una verificación parcial del certificado y producen un error al conectarse si el certificado del servidor de base de datos ha caducado.  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

### MySQL
<a name="ssl-certificate-rotation-mysql.determining-client.mysql"></a>

Los siguientes ejemplos con el cliente de MySQL muestran dos maneras de comprobar la conexión a MySQL de un script para determinar si las conexiones exitosas precisan un certificado válido. Para obtener más información sobre todas las opciones de conexión con el cliente de MySQL, consulte [Configuración del lado del cliente para las conexiones cifradas](https://dev.mysql.com/doc/refman/en/using-encrypted-connections.html#using-encrypted-connections-client-side-configuration) en la documentación de MySQL.

Al utilizar el cliente de MySQL 5.7 o 8.0, una conexión SSL precisa una verificación frente al certificado de CA del servidor si para la opción de `--ssl-mode` especifica `VERIFY_CA` o `VERIFY_IDENTITY`, como en el siguiente ejemplo.

```
mysql -h mysql-database.rds.amazonaws.com -uadmin -ppassword --ssl-ca=/tmp/ssl-cert.pem --ssl-mode=VERIFY_CA                
```

Al utilizar el cliente de MySQL 5.6, una conexión SSL precisa una verificación frente al certificado de CA del servidor si especifica la opción `--ssl-verify-server-cert`, como en el siguiente ejemplo.

```
mysql -h mysql-database.rds.amazonaws.com -uadmin -ppassword --ssl-ca=/tmp/ssl-cert.pem --ssl-verify-server-cert            
```

## Actualización del almacén de confianza de su aplicación
<a name="ssl-certificate-rotation-mariadb.updating-trust-store"></a>

Para obtener más información acerca de la actualización del almacén de confianza para las aplicaciones de MySQL, consulte [Uso de TLS/SSL con MariaDB Connector/J](https://mariadb.com/kb/en/library/using-tls-ssl-with-mariadb-java-connector/) en la documentación de MariaDB.

Para obtener información sobre la descarga del certificado raíz, consulte [Uso de SSL/TLS para cifrar una conexión a una instancia o un clúster de base de datos](UsingWithRDS.SSL.md).

Para obtener secuencias de comandos de ejemplo que importan certificados, consulte [Script de muestra para la importación de certificados en su almacén de confianza](UsingWithRDS.SSL-certificate-rotation.md#UsingWithRDS.SSL-certificate-rotation-sample-script).

**nota**  
Cuando actualice el almacén de confianza, puede retener certificados antiguos además de añadir los nuevos certificados.

Si utiliza el controlador de MariaDB Connector/J JDBC en una aplicación, establezca las siguientes propiedades en la aplicación.

```
System.setProperty("javax.net.ssl.trustStore", certs);
System.setProperty("javax.net.ssl.trustStorePassword", "password");
```

Cuando inicie la aplicación, establezca las siguientes propiedades.

```
java -Djavax.net.ssl.trustStore=/path_to_truststore/MyTruststore.jks -Djavax.net.ssl.trustStorePassword=my_truststore_password com.companyName.MyApplication        
```

**nota**  
Especifique contraseñas distintas de las que se muestran aquí como práctica recomendada de seguridad.

## Ejemplo de código Java para el establecimiento de conexiones SSL
<a name="ssl-certificate-rotation-mariadb.java-example"></a>

El siguiente ejemplo de código muestra cómo configurar la conexión SSL mediante JDBC.

```
private static final String DB_USER = "admin";

        private static final String DB_USER = "user name";
        private static final String DB_PASSWORD = "password";
        // This key store has only the prod root ca.
        private static final String KEY_STORE_FILE_PATH = "file-path-to-keystore";
        private static final String KEY_STORE_PASS = "keystore-password";
        
    public static void main(String[] args) throws Exception {
        Class.forName("org.mariadb.jdbc.Driver");

        System.setProperty("javax.net.ssl.trustStore", KEY_STORE_FILE_PATH);
        System.setProperty("javax.net.ssl.trustStorePassword", KEY_STORE_PASS);

        Properties properties = new Properties();
        properties.put("user", DB_USER);
        properties.put("password", DB_PASSWORD);


        Connection connection = DriverManager.getConnection("jdbc:mysql://ssl-mariadb-public.cni62e2e7kwh.us-east-1.rds.amazonaws.com:3306?useSSL=true",properties);
        Statement stmt=connection.createStatement();

        ResultSet rs=stmt.executeQuery("SELECT 1 from dual");

        return;
    }
```

**importante**  
Después de que haya determinado que sus conexiones de base de datos utilizan SSL/TLS y haya actualizado el almacén de confianza de su aplicación, puede actualizar su base de datos para que utilice los certificados de rds-ca-rsa2048-g1. Para obtener instrucciones, consulte el paso 3 en [Actualización del certificado de entidad de certificación modificando la instancia o el clúster de base de datos](UsingWithRDS.SSL-certificate-rotation.md#UsingWithRDS.SSL-certificate-rotation-updating).  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

# Mejora del rendimiento de las consultas de RDS para MariaDB con lecturas optimizadas de Amazon RDS
<a name="rds-optimized-reads-mariadb"></a>

Puede procesar las consultas más rápido para RDS para MariaDB con lecturas optimizadas de Amazon RDS. Una instancia de base de datos de RDS para Maria que utilice lecturas optimizadas de RDS puede procesar las consultas hasta dos veces más rápido en comparación con una instancia de base de datos que no la usa.

**Topics**
+ [Información general de las lecturas optimizadas de RDS](#rds-optimized-reads-mariadb-overview)
+ [Casos de uso de lecturas optimizadas para RDS](#rds-optimized-reads-mariadb-use-cases)
+ [Prácticas recomendadas para lecturas optimizadas de RDS](#rds-optimized-reads-mariadb-best-practices)
+ [Uso de lecturas optimizadas de RDS](#rds-optimized-reads-mariadb-using)
+ [Supervisión de instancias de base de datos que utilizan lecturas optimizadas de RDS](#rds-optimized-reads-mariadb-monitoring)
+ [Limitaciones de las lecturas optimizadas de RDS](#rds-optimized-reads-mariadb-limitations)

## Información general de las lecturas optimizadas de RDS
<a name="rds-optimized-reads-mariadb-overview"></a>

Cuando utiliza una instancia de base de datos de RDS para MariaDB que tiene activadas las lecturas optimizadas de RDS, la instancia de base de datos realiza las consultas más rápido mediante el uso de un almacén de instancias. El *almacén de instancias* ofrece un almacenamiento de nivel de bloques temporal para la instancia de base de datos. El almacenamiento se encuentra en unidades de estado sólido (SSD) de memoria rápida no volátil (NVMe) que están conectadas físicamente al servidor host. Este almacenamiento está optimizado para una latencia baja, un rendimiento de E/S aleatorio alto y un alto rendimiento de lectura secuencial.

Las lecturas optimizadas de RDS se activan de forma predeterminada cuando una instancia de base de datos usa una clase de instancia de base de datos con un almacén de instancias, como db.m5d o db.m6gd. Con las lecturas optimizadas de RDS, algunos objetos temporales se almacenan en el almacén de instancias. Estos objetos temporales incluyen archivos temporales internos, tablas temporales internas en disco, archivos de mapas de memoria y archivos de caché de registros binarios (binlog). Para obtener más información sobre el almacén de instancias, consulte [Almacén de instancias de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) en la *Guía del usuario de Amazon Elastic Compute Cloud para las instancias de Linux*.

Las cargas de trabajo que generan objetos temporales en MariaDB para el procesamiento de consultas pueden aprovechar el almacén de instancias para procesar las consultas más rápido. Este tipo de carga de trabajo incluye consultas que implican ordenaciones, agregaciones de hash, uniones de alta carga, expresiones de tablas comunes (CTE) y consultas en columnas no indexadas. Estos volúmenes de almacenes de instancias proporcionan mayores IOPS y rendimiento, independientemente de las configuraciones de almacenamiento utilizadas para el almacenamiento persistente de Amazon EBS. Dado que RDS Optimized Reads descarga las operaciones de los objetos temporales al almacén de instancias, ahora las operaciones de entrada/salida por segundo (IOPS) o el rendimiento del almacenamiento persistente (Amazon EBS) se pueden utilizar para operaciones en objetos persistentes. Estas operaciones incluyen las lecturas y escrituras habituales de archivos de datos y las operaciones del motor en segundo plano, como vaciar e insertar combinaciones de búferes.

**nota**  
Tanto las instantáneas de RDS manuales como las automatizadas solo contienen archivos de motor para objetos persistentes. Los objetos temporales creados en el almacén de instancias no se incluyen en las instantáneas de RDS.

## Casos de uso de lecturas optimizadas para RDS
<a name="rds-optimized-reads-mariadb-use-cases"></a>

Si tiene cargas de trabajo que dependen en gran medida de objetos temporales, como tablas o archivos internos, para ejecutar consultas, puede beneficiarse de activar las lecturas optimizadas de RDS. Los siguientes casos de uso son candidatos a las lecturas optimizadas para RDS:
+ Aplicaciones que ejecutan consultas analíticas con expresiones de tablas comunes (CTE) complejas, tablas derivadas y operaciones de agrupamiento
+ Réplicas de lectura que atienden un tráfico de lectura intenso con consultas no optimizadas
+ Aplicaciones que ejecutan consultas de generación de informes dinámicas o bajo demanda que implican operaciones complejas, como consultas con cláusulas `GROUP BY` y `ORDER BY`.
+ Cargas de trabajo que utilizan tablas temporales internas para el procesamiento de consultas

  Puede supervisar la variable de estado del motor `created_tmp_disk_tables` para determinar el número de tablas temporales basadas en discos que se han creado en la instancia de base de datos.
+ Aplicaciones que crean tablas temporales de gran tamaño, ya sea directamente o en procedimientos, para almacenar resultados intermedios
+ Consultas de bases de datos que agrupan u ordenan columnas no indexadas

## Prácticas recomendadas para lecturas optimizadas de RDS
<a name="rds-optimized-reads-mariadb-best-practices"></a>

Utilice estas prácticas recomendadas para utilizar lecturas optimizadas de RDS:
+ Añada una lógica de reintento para las consultas de solo lectura en caso de que fallen debido a que el almacén de instancias está lleno durante la ejecución.
+ Supervise el espacio de almacenamiento disponible en el almacén de instancias con la métrica de CloudWatch `FreeLocalStorage`. Si el almacén de instancias alcanza su límite debido a la carga de trabajo de la instancia de base de datos, modifíquela para usar una clase de instancia de base de datos más grande.
+ Cuando la instancia de base de datos tenga memoria suficiente pero siga alcanzando el límite de almacenamiento del almacén de instancias, aumente el valor `binlog_cache_size` para mantener en la memoria las entradas del binlog específicas de la sesión. Esta configuración impide escribir las entradas de binlog en los archivos temporales de caché de binlog en el disco.

  El parámetro `binlog_cache_size` es específico de la sesión. Puede cambiar el valor para cada nueva sesión. La configuración de este parámetro puede aumentar la utilización de memoria en la instancia de base de datos durante los picos de carga de trabajo. Por lo tanto, considere aumentar el valor del parámetro en función del patrón de carga de trabajo de la aplicación y de la memoria disponible en la instancia de base de datos.
+ Utilice el valor predeterminado de `MIXED` para el `binlog_format`. Según el tamaño de las transacciones, si se establece `binlog_format` en `ROW` se pueden generar archivos de caché binlog de gran tamaño en el almacén de instancias.
+ Evite realizar cambios masivos en una sola transacción. Estos tipos de transacciones pueden generar archivos de caché binlog de gran tamaño en el almacén de instancias y pueden causar problemas cuando el almacén de instancias está lleno. Considere la posibilidad de dividir las escrituras en varias transacciones pequeñas para minimizar el uso de almacenamiento de los archivos de caché binlog.

## Uso de lecturas optimizadas de RDS
<a name="rds-optimized-reads-mariadb-using"></a>

Al aprovisionar una instancia de base de datos de RDS para MariaDB con una de las siguientes clases de instancia de base de datos en una implementación de instancia de base de datos Single-AZ o Multi-AZ, la instancia de base de datos utiliza automáticamente lecturas optimizadas de RDS.

Para activar las lecturas optimizadas de RDS, realice una de las siguientes acciones:
+ Cree una instancia de base de datos de RDS para MariaDB utilizando una de estas clases de instancia de base de datos. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
+ Modifique una instancia de base de datos de RDS para MariaDB para utilizar una de estas clases de instancia de base de datos. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

Las lecturas optimizadas de RDS están disponibles en todas las Regiones de AWS donde se admite una o más de las clases de instancia de base de datos con almacenamiento SSD NVMe local. Para obtener información acerca de las clases de instancia de base de datos, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md).

La disponibilidad de las clases de instancia de base de datos es diferente en las Regiones de AWS. Para determinar si una clase de instancia de base de datos se admite en una Región de AWS específica, consulte [Determinación de la compatibilidad de la clase de instancia de base de datos en Regiones de AWS](Concepts.DBInstanceClass.RegionSupport.md).

Si no desea utilizar lecturas optimizadas de RDS, modifique la instancia de base de datos para que no utilice una clase de instancia de base de datos que admita la característica.

## Supervisión de instancias de base de datos que utilizan lecturas optimizadas de RDS
<a name="rds-optimized-reads-mariadb-monitoring"></a>

Puede supervisar las instancias de base de datos que utilizan lecturas optimizadas de RDS con las siguientes métricas de CloudWatch:
+ `FreeLocalStorage`
+ `ReadIOPSLocalStorage`
+ `ReadLatencyLocalStorage`
+ `ReadThroughputLocalStorage`
+ `WriteIOPSLocalStorage`
+ `WriteLatencyLocalStorage`
+ `WriteThroughputLocalStorage`

Estas métricas proporcionan datos sobre el almacén de instancias disponible, las IOPS y el rendimiento. Para obtener más información acerca de estas métricas, consulte [Métricas de nivel de instancia de Amazon CloudWatch para Amazon RDS](rds-metrics.md#rds-cw-metrics-instance).

## Limitaciones de las lecturas optimizadas de RDS
<a name="rds-optimized-reads-mariadb-limitations"></a>

Las limitaciones siguientes se aplican a las lecturas optimizadas de RDS:
+ Las lecturas optimizadas de RDS son compatibles con las siguientes versiones de RDS para MariaDB:
  + Todas las versiones secundarias disponibles de 11.4 y versiones principales posteriores
  + Versión 10.11.4 y versiones posteriores a la 10.11
  + Versión 10.6.7 y versiones posteriores a la 10.6
  + Versión 10.5.16 y versiones posteriores a la 10.5
  + Versión 10.4.25 y versiones posteriores a la 10.4

  Para obtener más información acerca de las versiones de RDS para MariaDB, consulte [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md).
+ No puede cambiar la ubicación de los objetos temporales al almacenamiento persistente (Amazon EBS) en las clases de instancias de base de datos que admiten lecturas optimizadas de RDS.
+ Cuando se habilita el registro binario en una instancia de base de datos, el tamaño máximo de transacción está limitado por el tamaño del almacén de instancias. En MariaDB, cualquier sesión que requiera más almacenamiento que el valor de `binlog_cache_size` escribe los cambios de transacciones en archivos de caché binlog temporales, que se crean en el almacén de instancias.
+ Las transacciones pueden fallar cuando el almacén de instancias está lleno.

# Mejora del rendimiento de escritura con Escrituras optimizadas para Amazon RDS para MariaDB
<a name="rds-optimized-writes-mariadb"></a>

Puede mejorar el rendimiento de las transacciones de escritura con Escrituras optimizadas para RDS para MariaDB. Cuando su base de datos de RDS para MariaDB utiliza escrituras optimizadas para RDS, puede lograr un rendimiento de transacciones de escritura hasta dos veces mayor.

**Topics**
+ [Información general de las escrituras optimizadas de RDS](#rds-optimized-writes-overview)
+ [Uso de escrituras optimizadas de RDS](#rds-optimized-writes-using-mariadb)
+ [Habilitar las escrituras optimizadas para RDS en una base de datos existente](#rds-optimized-writes-modify-enable-mariadb)
+ [Limitaciones de las escrituras optimizadas de RDS](#rds-optimized-writes-limitations-mariadb)

## Información general de las escrituras optimizadas de RDS
<a name="rds-optimized-writes-overview"></a>

Al activar las Escrituras optimizadas para RDS, las bases de datos de RDS para MariaDB escriben solo una vez cuando vacían los datos en un almacenamiento duradero sin necesidad de utilizar un búfer de escritura doble. Las bases de datos siguen protegiendo las propiedades de ACID para realizar transacciones de bases de datos fiables, además de mejorar el rendimiento.

Las bases de datos relacionales, como MariaDB, proporcionan las *propiedades ACID* de atomicidad, consistencia, aislamiento y durabilidad para transacciones de bases de datos fiables. Para ayudar a proporcionar estas propiedades, MariaDB utiliza un área de almacenamiento de datos denominada *búfer de escritura doble* que evita errores de escritura parcial de páginas. Estos errores se producen cuando se produce un error de hardware mientras la base de datos actualiza una página, como en el caso de un corte de luz. Una base de datos MariaDB puede detectar escrituras parciales de páginas y recuperarlas con una copia de la página en el búfer de escritura doble. Si bien esta técnica proporciona protección, también produce operaciones de escritura adicionales. Para obtener más información sobre el búfer de escritura doble de MariaDB, consulte [Doublewrite Buffer](https://mariadb.com/kb/en/innodb-doublewrite-buffer/) (Búfer de escritura doble) en la documentación de MariaDB.

Con las escrituras optimizadas para RDS activadas, las bases de datos de RDS para MariaDB escriben solo una vez cuando vacían los datos en un almacenamiento duradero sin utilizar el búfer de escritura doble. Las escrituras optimizadas para RDS son útiles si ejecuta cargas de trabajo con muchas escrituras en sus bases de datos de RDS para MariaDB. Entre los ejemplos de bases de datos con cargas de trabajo que requieren muchas escrituras, se incluyen las que admiten pagos digitales, operaciones financieras y aplicaciones de juegos.

Estas bases de datos se ejecutan en clases de instancias de base de datos que utilizan el sistema AWS Nitro. Gracias a la configuración del hardware de estos sistemas, la base de datos puede escribir páginas de 16 KiB directamente en archivos de datos de forma fiable y duradera en un solo paso. El sistema AWS Nitro permite las escrituras optimizadas de RDS.

Puede configurar el nuevo parámetro de base de datos `rds.optimized_writes` para controlar la característica de escrituras optimizadas para RDS para bases de datos RDS para MariaDB. Acceda a este parámetro en los grupos de parámetros de base de datos de RDS para MariaDB para las siguientes versiones:
+ Todas las versiones secundarias disponibles de 11.8 y versiones principales posteriores
+ Versión 11.4.3 y versiones posteriores a la 11.4
+ Versión 10.11.4 y versiones posteriores a la 10.11
+ Versión 10.6.10 y versiones posteriores a la 10.6

Establezca el parámetro con uno de los siguientes valores:
+ `AUTO`: activa las escrituras optimizadas de RDS si la base de datos las admite. Desactiva las escrituras optimizadas de RDS si la base de datos no las admite. Esta configuración es la predeterminada.
+ `OFF`: desactiva las escrituras optimizadas de RDS aunque la base de datos las admita.

Si migra una base de datos de RDS para MariaDB que está configurada para utilizar escrituras optimizadas para RDS en una clase de instancia de base de datos que no admite esta característica, RDS desactiva automáticamente las escrituras optimizadas para RDS para la base de datos.

Cuando las escrituras optimizadas para RDS están desactivadas, la base de datos utiliza el búfer de escritura doble de MariaDB.

Para determinar si una base de datos de RDS para MariaDB utiliza escrituras optimizadas para RDS, consulte el valor actual del parámetro `innodb_doublewrite` de la base de datos. Si la base de datos utiliza escrituras optimizadas de RDS, este parámetro se establece en `FALSE` (`0`).

## Uso de escrituras optimizadas de RDS
<a name="rds-optimized-writes-using-mariadb"></a>

Puede activar las escrituras optimizadas para RDS al crear una base de datos RDS para MariaDB con la consola de RDS, la AWS CLI o la API de RDS. Las escrituras optimizadas de RDS se activan automáticamente cuando se cumplen las dos condiciones siguientes durante la creación de la base de datos:
+ Debe especificar una clase de instancia de base de datos y una versión de motor de base de datos que admitan escrituras optimizadas de RDS.
  + Las escrituras optimizadas de RDS son compatibles con las siguientes versiones de RDS para MariaDB: 
    + Todas las versiones secundarias disponibles de 11.8 y versiones principales posteriores
    + Versión 11.4.3 y versiones posteriores a la 11.4
    + Versión 10.11.4 y versiones posteriores a la 10.11
    + Versión 10.6.10 y versiones posteriores a la 10.6

    Para obtener más información acerca de las versiones de RDS para MariaDB, consulte [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md).
  + Las bases de datos RDS para MariaDB que utilizan las siguientes clases de instancias de base de datos son compatibles con las escrituras optimizadas para RDS:
    + db.m7i
    + db.m7g
    + db.m6g
    + db.m6gd
    + db.m6i
    + db.m5
    + db.m5d
    + db.r7i
    + db.r7g
    + db.r6g
    + db.r6gd
    + db.r6i
    + db.r5
    + db.r5b
    + db.r5d
    + db.x2idn
    + db.x2iedn

    Para obtener información acerca de las clases de instancia de base de datos, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md).

    La disponibilidad de las clases de instancia de base de datos es diferente en las Regiones de AWS. Para determinar si una clase de instancia de base de datos se admite en una Región de AWS específica, consulte [Determinación de la compatibilidad de la clase de instancia de base de datos en Regiones de AWS](Concepts.DBInstanceClass.RegionSupport.md).
+ En el grupo de parámetros asociado a la base de datos, el parámetro `rds.optimized_writes` se establece en `AUTO`. En los grupos de parámetros predeterminados, este parámetro siempre se establece en `AUTO`.

Si desea utilizar una versión del motor de base de datos y una clase de instancia de base de datos que admita las escrituras optimizadas para RDS, pero no quiere utilizar esta característica, especifique un grupo de parámetros personalizado al crear la base de datos. En este grupo de parámetros, defina el parámetro `rds.optimized_writes` en `OFF`. Si desea que la base de datos utilice las escrituras optimizadas de RDS más adelante, puede configurar el parámetro `AUTO` para activarla. Para obtener información sobre cómo trabajar con grupos de parámetros personalizados y establecer parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Para obtener información acerca de la creación de una instancia de base de datos, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).

### Consola
<a name="rds-optimized-writes-using-console"></a>

Al utilizar la consola de RDS para crear una base de datos RDS para MariaDB, puede filtrar las versiones del motor de base de datos y las clases de instancia de base de datos que admiten las escrituras optimizadas para RDS. Tras activar los filtros, puede elegir entre las clases de instancia de base de datos y las versiones del motor de base de datos disponibles.

Para elegir una versión del motor de base de datos que admita escrituras optimizadas para RDS, filtre las versiones del motor de base de datos RDS para MariaDB que la admitan en **Versión del motor** y, a continuación, elija una versión.

![\[La sección Opciones de motor con el filtro Escrituras optimizadas para Amazon RDS activado para Versión del motor.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/rds-optimized-writes-version-filter-mariadb.png)


En la sección **Instance configuration** (Configuración de instancias), filtre las clases de instancias de base de datos que admiten escrituras optimizadas de RDS y, a continuación, elija una clase de instancia de base de datos.

![\[La sección Configuración de la instancia con el filtro Escrituras optimizadas para Amazon RDS activado para Clase de instancia de base de datos.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/rds-optimized-writes-class-filter.png)


Tras realizar estas selecciones, puede elegir otras configuraciones que cumplan sus requisitos y terminar de crear la base de datos RDS para MariaDB con la consola.

### AWS CLI
<a name="rds-optimized-writes-using-cli"></a>

Para crear una instancia de base de datos con la AWS CLI, utilice el comando [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html). Asegúrese de que los valores `--engine-version` y `--db-instance-class` admitan escrituras optimizadas de RDS. Además, asegúrese de que el grupo de parámetros asociado a la instancia de base de datos tiene el parámetro `rds.optimized_writes` configurado en `AUTO`. En este ejemplo, se asocia el grupo de parámetros predeterminado con la instancia de base de datos.

**Example Creación de una instancia de base de datos que utilice escrituras optimizadas de RDS**  
Para Linux, macOS o Unix:  

```
1. aws rds create-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --engine mariadb \
4.     --engine-version 10.6.10 \
5.     --db-instance-class db.r5b.large \
6.     --manage-master-user-password \
7.     --master-username admin \
8.     --allocated-storage 200
```
Para Windows:  

```
1. aws rds create-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --engine mariadb ^
4.     --engine-version 10.6.10 ^
5.     --db-instance-class db.r5b.large ^
6.     --manage-master-user-password ^
7.     --master-username admin ^
8.     --allocated-storage 200
```

### API de RDS
<a name="rds-optimized-writes-using-api"></a>

Puede crear una instancia de base de datos mediante la operación [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html). Cuando realice esta operación, asegúrese de que los valores `EngineVersion` y `DBInstanceClass` admitan escrituras optimizadas de RDS. Además, asegúrese de que el grupo de parámetros asociado a la instancia de base de datos tiene el parámetro `rds.optimized_writes` configurado en `AUTO`. 

## Habilitar las escrituras optimizadas para RDS en una base de datos existente
<a name="rds-optimized-writes-modify-enable-mariadb"></a>

A fin de modificar una base de datos RDS para MariaDB existente y activar las escrituras optimizadas para RDS, la base de datos debe haberse creado con una versión de motor de base de datos y una clase de instancia de base de datos compatibles. Además, la base de datos debe haberse creado *después* del lanzamiento de las escrituras optimizadas para RDS el 7 de marzo de 2023, ya que la configuración del sistema de archivos subyacente requerida es incompatible con la de las bases de datos creadas antes de su publicación. Si se cumplen estas condiciones, puede activar las escrituras optimizadas para RDS poniendo el parámetro `rds.optimized_writes` en `AUTO`.

Si la base de datos *no* se creó con una versión de motor, una clase de instancia o una configuración de sistema de archivos compatibles, puede usar las implementaciones azul/verde de RDS para migrar a una configuración compatible. Al crear la implementación azul/verde, haga lo siguiente:
+ Seleccione **Habilitar escrituras optimizadas en base de datos verde** y especifique una versión del motor y una clase de instancia de base de datos que admitan escrituras optimizadas de RDS. Para ver una lista de las versiones de motor y las clases de instancias compatibles, consulte [Uso de escrituras optimizadas de RDS](#rds-optimized-writes-using-mariadb). 
+ En **Almacenamiento**, seleccione **Actualizar la configuración del sistema de archivos de almacenamiento**. Esta opción actualiza la base de datos a una configuración de sistema de archivos subyacente compatible.

Al crear la implementación azul/verde, si el parámetro `rds.optimized_writes` se ha configurado en `AUTO`, las escrituras optimizadas de RDS se habilitarán automáticamente en el entorno verde. A continuación, puede conmutar la implementación azul/verde para que el entorno verde sea el nuevo entorno de producción.

Para obtener más información, consulte [Creación de una implementación azul/verde en Amazon RDS](blue-green-deployments-creating.md).

## Limitaciones de las escrituras optimizadas de RDS
<a name="rds-optimized-writes-limitations-mariadb"></a>

Al restaurar una base de datos de RDS para MariaDB a partir de una instantánea, solo puede activar las escrituras optimizadas para RDS para la base de datos si se cumplen todas las condiciones siguientes:
+ La instantánea se creó a partir de una base de datos que admite escrituras optimizadas de RDS.
+ La instantánea se ha creado a partir de una base de datos que se creó *después* del lanzamiento de las escrituras optimizadas para RDS.
+ La instantánea se restaura en una base de datos que admite escrituras optimizadas de RDS.
+ La base de datos restaurada está asociada a un grupo de parámetros que tiene el parámetro `rds.optimized_writes` establecido en `AUTO`.

# Actualizaciones del motor de base de datos de MariaDB
<a name="USER_UpgradeDBInstance.MariaDB"></a>

Cuando Amazon RDS admita una nueva versión de un motor de base de datos, podrá actualizar sus instancias de base de datos a la nueva versión. Hay dos tipos de actualizaciones para las instancias de base de datos de MariaDB: actualizaciones de versiones principales y actualizaciones de versiones secundarias. 

*Las actualizaciones de la versión principal* pueden contener cambios realizados en la base de datos que no son compatibles con las versiones anteriores de las aplicaciones. Por lo tanto, debe realizar manualmente las actualizaciones de versiones principales de sus instancias de base de datos. Puede iniciar una actualización de versión principal modificando su instancia de base de datos. Sin embargo, antes de realizar una actualización de versión principal, recomendamos que siga las instrucciones descritas en [Actualizaciones de versiones principales de RDS para MariaDB](USER_UpgradeDBInstance.MariaDB.Major.md). 

Por su parte, las *actualizaciones de versiones secundarias* solo incluyen cambios compatibles con las versiones anteriores de las aplicaciones. Puede iniciar manualmente una actualización de versiones secundarias modificando su instancia de base de datos. O puede habilitar la opción **Auto minor version upgrade (Actualización automática de versiones secundarias)** al crear o modificar una instancia de base de datos. Si lo hace, su instancia de base de datos se actualizará automáticamente después de que Amazon RDS pruebe y apruebe la nueva versión. Para obtener información sobre cómo realizar una actualización, consulte [Actualización de una versión del motor de una instancia de base de datos ](USER_UpgradeDBInstance.Upgrading.md).

Si la instancia de base de datos de MariaDB usa las réplicas de lectura, debe actualizar todas las réplicas de lectura antes de actualizar la instancia de origen. Si la instancia de base de datos está en una implementación Multi-AZ, se actualizan las réplicas en espera y de escritor. Es posible que su instancia de base de datos no esté disponible hasta que se complete la actualización. 

Para obtener más información acerca de las versiones de MariaDB compatibles y la administración de las versiones, consulte [Versiones de MariaDB en Amazon RDS](MariaDB.Concepts.VersionMgmt.md). 

Las actualizaciones del motor de base de datos requieren tiempo de inactividad El tiempo que dura la interrupción varía según el tamaño de la instancia de base de datos.

Amazon RDS también admite la política de implementación de actualizaciones para administrar las actualizaciones automáticas de versiones secundarias en varios recursos de bases de datos y Cuentas de AWS. Para obtener más información, consulte [Uso de la política de implementación de actualizaciones de AWS Organizations para actualizaciones de versiones secundarias automáticas](RDS.Maintenance.AMVU.UpgradeRollout.md).

**sugerencia**  
Puede minimizar el tiempo de inactividad necesario para la actualización de la instancia de base de datos mediante una implementación azul/verde. Para obtener más información, consulte [Uso de las implementaciones azul/verde de Amazon RDS para actualizar las bases de datos](blue-green-deployments.md).

**Topics**
+ [Aspectos a tener en cuenta sobre las actualizaciones de MariaDB](#USER_UpgradeDBInstance.MariaDB.Considerations)
+ [Búsqueda de objetivos de actualización válidos](#USER_UpgradeDBInstance.MariaDB.FindingTargets)
+ [Números de versión de MariaDB](USER_UpgradeDBInstance.MariaDB.VersionID.md)
+ [Números de versión de RDS en RDS para MariaDB](USER_UpgradeDBInstance.MariaDB.rds.version.md)
+ [Actualizaciones de versiones principales de RDS para MariaDB](USER_UpgradeDBInstance.MariaDB.Major.md)
+ [Actualización de una instancia de base de datos MariaDB](#USER_UpgradeDBInstance.MariaDB.Upgrading)
+ [Actualizaciones de versiones secundarias automáticas de RDS para MariaDB](USER_UpgradeDBInstance.MariaDB.Minor.md)
+ [Uso de una réplica de lectura para reducir el tiempo de inactividad al actualizar una base de datos de RDS para MariaDB](USER_UpgradeDBInstance.MariaDB.ReducedDowntime.md)
+ [Supervisión de las actualizaciones del motor de base de datos de RDS para MariaDB con eventos](USER_UpgradeDBInstance.MariaDB.Monitoring.md)

## Aspectos a tener en cuenta sobre las actualizaciones de MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.Considerations"></a>

Amazon RDS toma dos o más instantáneas de la base de datos durante el proceso de actualización. Amazon RDS toma hasta dos instantáneas de la instancia de base de datos *antes* de realizar cualquier cambio en la actualización. Si la actualización de las bases de datos no funciona, puede restaurar una de estas instantáneas para crear una instancia de base de datos que ejecute la versión antigua. Amazon RDS toma otra instantánea de la instancia de base de datos cuando se completa la actualización. Amazon RDS toma estas instantáneas independientemente de si AWS Backup administra las copias de seguridad de la instancia de base de datos. 

**nota**  
Amazon RDS solo realiza instantáneas de base de datos si ha definido el periodo de retención de copia de seguridad de su instancia de base de datos en un número mayor que 0. Para cambiar el periodo de retención de copia de seguridad, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 

Después de completar la actualización, no puede volver a la versión anterior del motor de base de datos. Si desea volver a la versión anterior, restaure la primera instantánea de base de datos que se realizó para crear una nueva instancia de base de datos. 

Puede controlar cuándo debe actualizar la instancia de base de datos a una nueva versión admitida por Amazon RDS. Este nivel de control le ayuda a mantener la compatibilidad con versiones de base de datos específicas y probar nuevas versiones con una aplicación antes de implementarlas en producción. Cuando esté listo, podrá efectuar actualizaciones de versiones en el momento que le resulte más conveniente. 

Si la instancia de base de datos de usa la replicación de lectura, debe actualizar todas las réplicas de lectura antes de actualizar la instancia de origen. 

Si la instancia de base de datos se encuentra en un despliegue Multi-AZ, se actualizan la instancia de base de datos principal y la instancia en espera. Las instancias de base de datos principal y en espera se actualizan al mismo tiempo y se produce una interrupción hasta que finaliza la actualización. El tiempo que dura la interrupción varía según el motor de base de datos, la versión del motor y el tamaño de la instancia de base de datos. 

## Búsqueda de objetivos de actualización válidos
<a name="USER_UpgradeDBInstance.MariaDB.FindingTargets"></a>

Cuando se utiliza la Consola de administración de AWS para actualizar una instancia de base de datos, muestra los destinos de actualización válidos para la instancia de base de datos. También puede utilizar el siguiente comando de la AWS CLI para identificar los destinos de actualización válidos para una instancia de base de datos:

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
  --engine mariadb \
  --engine-version version_number \
  --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

Para Windows:

```
aws rds describe-db-engine-versions ^
  --engine mariadb ^
  --engine-version version_number ^
  --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

Por ejemplo, para identificar los destinos de actualización válidos para una instancia de base de datos de MariaDB versión 10.5.17, ejecute el siguiente comando de la AWS CLI:

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
  --engine mariadb \
  --engine-version 10.5.17 \
  --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

Para Windows:

```
aws rds describe-db-engine-versions ^
  --engine mariadb ^
  --engine-version 10.5.17 ^
  --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

# Números de versión de MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.VersionID"></a>

La secuencia de numeración de las versiones del motor de la base de datos RDS para MariaDB tiene el formato *principal.secundaria.parche.aaaammdd* o *principal.secundaria.parche* (por ejemplo, 10.11.5.R2.20231201 o 10.4.30). El formato utilizado depende de la versión del motor de MariaDB.

**principal**  
El número de versión principal es tanto el entero como la primera parte fraccional del número de versión (por ejemplo, 10.11). Una actualización de versión principal aumenta la parte principal del número de versión. Por ejemplo, una actualización de *10.5*.20 a 10.6.12 es una actualización de versión principal, donde *10.5* y *10.6* son los números de la versión principal.

**secundaria**  
El número de versión secundaria es la tercera parte del número de versión (por ejemplo, el 5 en 10.11.5).

**parche**  
El parche es la cuarta parte del número de versión (por ejemplo, el R2 en 10.11.5.R2). Una versión de parche de RDS incluye correcciones de errores importantes que se agregan a una versión secundaria después de su lanzamiento.

**AAAAMMDD**  
La fecha es la quinta parte del número de versión (por ejemplo, 20231201 en 10.11.5.R2.20231201). Una versión de fecha de RDS es un parche de seguridad que incluye correcciones de seguridad importantes que se agregan a una versión secundaria después de su lanzamiento. No incluye ninguna corrección que pueda cambiar el comportamiento de un motor.

La siguiente tabla explica el esquema de nomenclatura de RDS para MariaDB versión 10.11. 


| Versión secundaria 10.11 | Esquema de nomenclatura | 
| --- | --- | 
| ≥5  | Las nuevas instancias de base de datos utilizan el formato *principal.secundaria.parche.AAMMDD* (por ejemplo, 10.11.5.R2.20231201). Las instancias de base de datos existentes pueden usar el formato *principal.secundaria.parche* (por ejemplo, 10.11.5.R2) hasta la próxima actualización de la versión principal o secundaria. | 
| < 5 |  Las instancias de base de datos existentes utilizan el formato *principal.secundaria.parche* (por ejemplo, 10.11.4.R2).  | 

La siguiente tabla explica el esquema de nomenclatura de RDS para MariaDB versión 10.6. 


| Versión secundaria 10.6 | Esquema de nomenclatura | 
| --- | --- | 
| ≥ 14 |  Las nuevas instancias de base de datos utilizan el formato *principal.secundaria.parche.AAMMDD* (por ejemplo, 10.6.14.R2.20231201). Las instancias de base de datos existentes pueden usar el formato *principal.secundaria.parche* (por ejemplo, 10.6.14.R2) hasta la próxima actualización de la versión principal o secundaria. | 
| < 14 | Las instancias de base de datos existentes utilizan el formato *principal.secundaria.parche* (por ejemplo, 10.6.13.R2). | 

La siguiente tabla explica el esquema de nomenclatura de RDS para MariaDB versión 10.5. 


| Versión secundaria 10.5 | Esquema de nomenclatura | 
| --- | --- | 
| ≥ 21 |  Las nuevas instancias de base de datos utilizan el formato *principal.secundaria.parche.AAMMDD* (por ejemplo, 10.5.21.R2.20231201). Las instancias de base de datos existentes pueden usar el formato *principal.secundaria.parche* (por ejemplo, 10.5.21.R2) hasta la próxima actualización de la versión principal o secundaria. | 
| < 21 |  Las instancias de base de datos existentes utilizan el formato *principal.secundaria.parche* (por ejemplo, 10.5.20.R2).  | 

La siguiente tabla explica el esquema de nomenclatura de RDS para MariaDB versión 10.4. 


| Versión secundaria 10.4 | Esquema de nomenclatura | 
| --- | --- | 
| ≥ 30 |  Las nuevas instancias de base de datos utilizan el formato *principal.secundaria.parche.AAMMDD* (por ejemplo, 10.4.30.R2.20231201). Las instancias de base de datos existentes pueden usar el formato *principal.secundaria.parche* (por ejemplo, 10.4.30.R2) hasta la próxima actualización de la versión principal o secundaria. | 
| < 30 |  Las instancias de base de datos existentes utilizan el formato *principal.secundaria.parche* (por ejemplo, 10.4.29.R2).  | 

# Números de versión de RDS en RDS para MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.rds.version"></a>

Los números de versión de RDS utilizan el esquema de nomenclatura `major.minor.patch` o `major.minor.patch.YYYYMMDD`. Una versión de parche de RDS incluye correcciones de errores importantes que se agregan a una versión secundaria después de su lanzamiento. Una versión de fecha de RDS (*AAMMDD*) es un parche de seguridad. Un parche de seguridad no incluye ninguna corrección que pueda cambiar el comportamiento de un motor. 

Para identificar el número de versión de Amazon RDS de la base de datos, primero debe crear la extensión `rds_tools` mediante el siguiente comando:

```
CREATE EXTENSION rds_tools;
```

Puede averiguar el número de versión de RDS de su base de datos de RDS para MariaDB con la siguiente consulta SQL:

```
mysql> select mysql.rds_version();
```

Por ejemplo, la consulta de una base de datos de RDS para MariaDB 10.6.14 muestra lo siguiente:

```
+---------------------+
| mysql.rds_version() |
+---------------------+
| 10.6.14.R2.20231201  |
+---------------------+
1 row in set (0.01 sec)
```

# Actualizaciones de versiones principales de RDS para MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.Major"></a>

Las actualizaciones de la versión principal pueden contener cambios realizados en la base de datos que no son compatibles con las versiones anteriores de las aplicaciones. En consecuencia, Amazon RDS no aplica automáticamente actualizaciones de versión principal. Debe modificar manualmente su instancia de base de datos. Recomendamos que pruebe exhaustivamente cualquier actualización antes de aplicarla a las instancias de producción. 

**nota**  
En MariaDB 11.8, el valor predeterminado para `require_secure_transport` es ahora `1`, lo que requiere conexiones SSL/TLS seguras. Establézcalo en `0` si se necesitan conexiones no seguras.

Amazon RDS es compatible con las siguientes actualizaciones locales para versiones principales del motor de base de datos de MariaDB:
+ Cualquier versión de MariaDB hasta MariaDB 11.8
+ Cualquier versión de MariaDB hasta MariaDB 11.4
+ Cualquier versión de MariaDB hasta MariaDB 10.11
+ Cualquier versión de MariaDB hasta MariaDB 10.6
+ MariaDB 10.4 a MariaDB 10.5

Si desea usar un grupo de parámetros personalizado y realiza una actualización de versión principal, debe especificar un grupo de parámetros predeterminado para la nueva versión del motor de base de datos o crear su grupo de parámetros personalizado para la nueva versión del motor de base de datos. Para asociar el nuevo grupo de parámetros con la instancia de base de datos se requiere un reinicio de la base de datos iniciado por el cliente una vez que se haya completado la actualización. El estado del grupo de parámetros de la instancia mostrará `pending-reboot` si la instancia se tiene que reiniciar para aplicar los cambios del grupo de parámetros. El estado del grupo de parámetros de una instancia se puede visualizar en la Consola de administración de AWS o ejecutando una llamada "describe", como `describe-db-instances`.

## Actualización de una instancia de base de datos MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.Upgrading"></a>

Para obtener más información acerca de la actualización automática o manual de una instancia de base de datos MariaDB, consulte [Actualización de una versión del motor de una instancia de base de datos ](USER_UpgradeDBInstance.Upgrading.md).

# Actualizaciones de versiones secundarias automáticas de RDS para MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.Minor"></a>

Si especifica la siguiente configuración al crear o modificar una instancia de base de datos, puede actualizar automáticamente la instancia de base de datos.
+ La opción **Auto minor version upgrade** (Actualización automática de versión secundaria) está habilitada.
+ La configuración del **Backup retention period** (periodo de retención de copia de seguridad) es mayor que 0.

En la Consola de administración de AWS, esta configuración se encuentra en **Additional configuration** (Configuración adicional). En la siguiente imagen se muestra la configuración **Auto minor version upgrade** (Actualización automática de versiones secundarias).

![\[Auto minor version upgrade (Actualización automática de versiones secundarias)\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/amvu.png)


Para obtener más información sobre estas opciones, consulte [Configuración de instancias de base de datos](USER_ModifyInstance.Settings.md).

Para algunas versiones principales de RDS para MariaDB en algunas Regiones de AWS, RDS designa una versión secundaria como versión de actualización automática. Después de que Amazon RDS pruebe y apruebe una versión secundaria, la actualización de versión secundaria se produce automáticamente durante el periodo de mantenimiento. RDS no configura automáticamente versiones secundarias publicadas recientemente como la versión de actualización automática. Antes de que RDS asigne una versión de actualización automática más reciente, deben considerarse algunos criterios, como, por ejemplo, los que se indican a continuación:
+ Problemas de seguridad conocidos
+ Errores en la versión de la comunidad de MariaDB
+ Estabilidad general de la flota desde que se publicó la versión secundaria

**nota**  
Se ha eliminado la compatibilidad con las versiones 1.0 y 1.1 de TLS a partir de versiones secundarias específicas de MariaDB. Para obtener información acerca de la compatibilidad de las versiones secundarias de MariaDB, consulte [Compatibilidad con SSL/TLS para instancias de base de datos de MariaDB en Amazon RDS](MariaDB.Concepts.SSLSupport.md).

Puede utilizar el siguiente comando de la AWS CLI para determinar la versión actual de destino de actualización secundaria automática para una versión secundaria de MariaDB especificada en una Región de AWS específica. 

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
--engine mariadb \
--engine-version minor_version \
--region region \
--query "DBEngineVersions[*].ValidUpgradeTarget[*].{AutoUpgrade:AutoUpgrade,EngineVersion:EngineVersion}" \
--output text
```

Para Windows:

```
aws rds describe-db-engine-versions ^
--engine mariadb ^
--engine-version minor_version ^
--region region ^
--query "DBEngineVersions[*].ValidUpgradeTarget[*].{AutoUpgrade:AutoUpgrade,EngineVersion:EngineVersion}" ^
--output text
```

Por ejemplo, el siguiente comando de la AWS CLI determina el destino de actualización secundario automático para la versión secundaria 10.5.16 de MariaDB en la Región de AWS de Este de EE. UU. (Ohio) (us-east-2).

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
--engine mariadb \
--engine-version 10.5.16 \
--region us-east-2 \
--query "DBEngineVersions[*].ValidUpgradeTarget[*].{AutoUpgrade:AutoUpgrade,EngineVersion:EngineVersion}" \
--output table
```

Para Windows:

```
aws rds describe-db-engine-versions ^
--engine mariadb ^
--engine-version 10.5.16 ^
--region us-east-2 ^
--query "DBEngineVersions[*].ValidUpgradeTarget[*].{AutoUpgrade:AutoUpgrade,EngineVersion:EngineVersion}" ^
--output table
```

Su resultado es similar al siguiente.

```
----------------------------------
|    DescribeDBEngineVersions    |
+--------------+-----------------+
|  AutoUpgrade |  EngineVersion  |
+--------------+-----------------+
|  True        |  10.5.17        |
|  False       |  10.5.18        |
|  False       |  10.5.19        |
|  False       |  10.6.5         |
|  False       |  10.6.7         |
|  False       |  10.6.8         |
|  False       |  10.6.10        |
|  False       |  10.6.11        | 
|  False       |  10.6.12        |
+--------------+-----------------+
```

En este ejemplo, el valor `AutoUpgrade` es `True` para MariaDB versión 10.5.17. Por lo tanto, el objetivo de actualización secundaria automática es MariaDB versión 10.5.17., que está resaltado en el resultado.

Una instancia de base de datos de MariaDB se actualiza automáticamente durante el periodo de mantenimiento si se cumplen los siguientes criterios:
+ La opción **Auto minor version upgrade** (Actualización automática de versión secundaria) está habilitada.
+ La configuración del **Backup retention period** (periodo de retención de copia de seguridad) es mayor que 0.
+ La instancia de base de datos se ejecuta en una versión secundaria de motor de base de datos que es anterior a la versión secundaria de actualización automática actual.

Para obtener más información, consulte [Actualización automática de la versión secundaria del motor](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades). 

# Uso de una réplica de lectura para reducir el tiempo de inactividad al actualizar una base de datos de RDS para MariaDB
<a name="USER_UpgradeDBInstance.MariaDB.ReducedDowntime"></a>

En la mayoría de los casos, una implementación azul/verde es la mejor opción para reducir el tiempo de inactividad al actualizar una instancia de base de datos MariaDB. Para obtener más información, consulte [Uso de las implementaciones azul/verde de Amazon RDS para actualizar las bases de datos](blue-green-deployments.md). 

Si no puede usar una implementación azul/verde y en la actualidad se está utilizando su instancia de base de datos de MariaDB con una aplicación de producción, puede utilizar el siguiente procedimiento para actualizar la versión de base de datos de la instancia de base de datos. Este procedimiento puede reducir la duración del tiempo de inactividad de la aplicación. 

Al utilizar una réplica de lectura, puede realizar la mayoría de los pasos de mantenimiento con anticipación y minimizar los cambios necesarios durante la interrupción real. Con esta técnica, puede probar y preparar la nueva instancia de base de datos sin realizar ningún cambio en su instancia de base de datos existente.

El siguiente procedimiento muestra un ejemplo de actualización de la versión 10.5 de MariaDB a la 10.6. Puede usar los mismos pasos generales para actualizaciones a otras versiones principales. 

**Para actualizar una base de datos MariaDB mientras se está utilizando una instancia de base de datos**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Cree una réplica de lectura para la instancia de base de datos de MariaDB 10.5. Este proceso permite crear una copia actualizable de su base de datos. También pueden existir otras réplicas de lectura de la instancia de base de datos.

   1. En la consola, elija **Databases** (Bases de datos) y, después, seleccione la instancia de base de datos que desea actualizar.

   1. En **Actions (Acciones)**, elija **Create read replica (Crear réplica de lectura)**.

   1. Proporcione un valor de **DB instance identifier** (Identificador de instancias de bases de datos) para su réplica de lectura y asegúrese de que el valor de **DB instance class** (Clase de instancia de base de datos) y otros ajustes coinciden con su instancia de base de datos de MariaDB 10.5.

   1. Elija **Create read replica (Crear réplica de lectura)**.

1. (Opcional) Cuando se ha creado la réplica de lectura y **Status** (Estado) se muestra como **Available** (Disponible), convierta la réplica de lectura en una implementación Multi-AZ y habilite las copias de seguridad.

   De forma predeterminada, una réplica de lectura se crea como una implementación Single-AZ con copias de seguridad deshabilitadas. Dado que la réplica de lectura se convierte en la instancia de base de datos de producción, es una práctica recomendada configurar una implementación Multi-AZ y habilitar ahora las copias de seguridad.

   1. En la consola, elija **Databases** (Bases de datos) y, después, seleccione la réplica de lectura que acaba de crear.

   1. Elija **Modify**.

   1. Para **Multi-AZ deployment** (Implementación Multi-AZ), elija **Create a standby instance** (Crear una instancia en espera).

   1. En **Backup Retention Period** (Periodo de retención de copia de seguridad), elija un valor positivo distinto de cero, por ejemplo, 3 días y, después, elija **Continue** (Continuar).

   1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

   1. Elija **Modificar la instancia de base de datos**.

1. Cuando el **Status** (Estado) de la réplica de lectura se muestra como **Available** (Disponible), actualice la réplica de lectura a MariaDB 10.6.

   1. En la consola, elija **Databases** (Bases de datos) y, después, seleccione la réplica de lectura que acaba de crear.

   1. Elija **Modify**.

   1. En **DB engine version** (Versión del motor de base de datos), elija la versión de MariaDB 10.6. a la que se realizará la actualización y, luego, elija **Continue** (Continuar).

   1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

   1. Elija **Modify DB instance (Modificar instancia de base de datos)** para comenzar la actualización. 

1. Cuando haya finalizado la actualización y el **Status** (Estado) se muestre como **Available** (Disponible), verifique que la réplica de lectura actualizada esté al día con la instancia de base de datos de MariaDB 10.5 de origen. Para comprobarlo, conéctese a la réplica de lectura y ejecute el comando `SHOW REPLICA STATUS`. Si el campo `Seconds_Behind_Master` muestra `0`, significa que la replicación está al día.
**nota**  
Versiones anteriores de MariaDB utilizaban `SHOW SLAVE STATUS` en lugar de `SHOW REPLICA STATUS`. Si usa una versión de MariaDB anterior a la 10.6, utilice `SHOW SLAVE STATUS`. 

1. (Opcional) Cree una réplica de lectura de su réplica de lectura.

   Si desea que la instancia de base de datos tenga una réplica de lectura después de promocionarse a una instancia de base de datos independiente, puede crear la réplica de lectura ahora.

   1. En la consola, elija **Databases** (Bases de datos) y, después, seleccione la réplica de lectura que acaba de actualizar.

   1. En **Actions (Acciones)**, elija **Create read replica (Crear réplica de lectura)**.

   1. Proporcione un valor de **DB instance identifier** (Identificador de instancias de bases de datos) para su réplica de lectura y asegúrese de que el valor de **DB instance class** (Clase de instancia de base de datos) y otros ajustes coinciden con su instancia de base de datos de MariaDB 10.5.

   1. Elija **Create read replica (Crear réplica de lectura)**.

1. (Opcional) Configure un grupo de parámetros de base de datos personalizado para la réplica de lectura.

   Si desea que la instancia de base de datos utilice un grupo de parámetros personalizado después de promocionarse a una instancia de base de datos independiente, puede crear el grupo de parámetros de base de datos ahora y asociarlo con la réplica de lectura.

   1. Cree un grupo de parámetros de base de datos personalizado para MariaDB 10.6. Para obtener instrucciones, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

   1. Modifique los parámetros que desea cambiar en el grupo de parámetros de base de datos que acaba de crear. Para obtener instrucciones, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

   1. En la consola, elija **Databases** (Bases de datos) y, a continuación, elija la réplica de lectura.

   1. Elija **Modify**.

   1. En **DB parameter group** (Grupo de parámetros de base de datos), elija el grupo de parámetros de base de datos de MariaDB 10.6 que acaba de crear y, a continuación, elija **Continue** (Continuar).

   1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

   1. Elija **Modify DB instance (Modificar instancia de base de datos)** para comenzar la actualización. 

1. Haga que su réplica de lectura de MariaDB 10.6 sea una instancia de base de datos independiente. 
**importante**  
Cuando promocione su réplica de lectura de MariaDB 10.6 a una instancia de base de datos independiente, dejará de ser una réplica de su instancia de base de datos de MariaDB 10.5. Recomendamos que promocione su réplica de lectura de MariaDB 10.6 durante un período de mantenimiento cuando su instancia de base de datos de MariaDB 10.5 de origen esté en modo de solo lectura y se hayan suspendido todas las operaciones de escritura. Cuando haya finalizado la promoción, puede dirigir sus operaciones de escritura a la instancia de base de datos de MariaDB 10.6 actualizada para asegurarse de que no se ha perdido ninguna operación de escritura.  
Además, recomendamos que, antes de promocionar su réplica de lectura de MariaDB 10.6, realice todas las operaciones de lenguaje de definición de datos (DDL) necesarias en la réplica de lectura de MariaDB 10.6. Un ejemplo es la creación de índices. Este enfoque evita los efectos negativos en el rendimiento de la réplica de lectura de MariaDB 10.6 después de su promoción. Para promocionar una réplica de lectura, siga este procedimiento.

   1. En la consola, elija **Databases** (Bases de datos) y, después, seleccione la réplica de lectura que acaba de actualizar.

   1. En ** Actions (Acciones)**, seleccione **Promote (Promover)**.

   1. Elija **Yes (Sí)** para habilitar las copias de seguridad automatizadas para la instancia de réplica de lectura. Para obtener más información, consulte [Introducción a las copias de seguridad](USER_WorkingWithAutomatedBackups.md).

   1. Elija **Continue**.

   1. Elija **Promote Read Replica**.

1. Ahora tiene una versión actualizada de su base de datos MariaDB. En este punto, puede dirigir sus aplicaciones a la nueva instancia de base de datos de MariaDB 10.6.

# Supervisión de las actualizaciones del motor de base de datos de RDS para MariaDB con eventos
<a name="USER_UpgradeDBInstance.MariaDB.Monitoring"></a>

Cuando se actualiza la versión del motor de una base de datos de RDS para MariaDB, Amazon RDS emite un evento específico durante cada fase del proceso. Para realizar un seguimiento del progreso de una actualización, puede ver estos eventos o suscribirse a ellos.

 Para obtener más información sobre los eventos de RDS, consulte [Supervisión de eventos de Amazon RDS](working-with-events.md).

Para obtener información detallada sobre un evento específico de Amazon RDS que se produce durante la actualización del motor, consulte [Categorías y mensajes de eventos de Amazon RDS ](USER_Events.Messages.md).

# Actualización de una versión del motor de instantáneas de base de datos de MariaDB
<a name="mariadb-upgrade-snapshot"></a>

Con Amazon RDS, puede crear una instantánea de base de datos de volumen de almacenamiento de la instancia de base de datos de MariaDB. Cuando se crea una instantánea de base de datos, esta se basa en la versión del motor empleada por la instancia de base de datos. Puede actualizar la versión del motor para las instantáneas de base de datos. 

En el caso de RDS para MariaDB, puede actualizar a todas las versiones de motor disponibles. Puede actualizar instantáneas de base de datos cifradas o no cifradas.

Para ver las versiones de motor disponibles para la instantánea de base de datos de RDS para MariaDB, utilice el siguiente ejemplo de AWS CLI.

```
aws rds describe-db-engine-versions --engine mariadb --include-all --engine-version example-engine-version --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" --output text
```

Si no ve los resultados de la instantánea, es posible que la versión del motor esté obsoleta. Si la versión del motor ha quedado obsoleta, le recomendamos que actualice al destino de actualización de versión principal más reciente o a uno de los demás destinos de actualización disponibles para esa versión. Para obtener más información, consulte [Opciones de actualización para instantáneas de bases de datos con versiones de motor no compatibles con RDS para MariaDB](mariadb-upgrade-snapshot.upgrade-options.md).

Después de restaurar una instantánea de base de datos actualizada a una nueva versión del motor, asegúrese que la actualización se ha realizado correctamente. Para obtener más información acerca de una actualización de versión principal, consulte [Actualizaciones del motor de base de datos de MariaDB](USER_UpgradeDBInstance.MariaDB.md). Para aprender a restaurar una instantánea de base de datos, consulte [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md).

**nota**  
No puede actualizar las instantáneas de base de datos automatizadas que se hayan creado durante el proceso de copia de seguridad automatizado.

Puede actualizar una instantánea de base de datos usando la Consola de administración de AWS, la AWS CLI o la API de RDS.

------
#### [ Console ]

Para actualizar la versión del motor de una instantánea de base de datos mediante la Consola de administración de AWS, siga el siguiente procedimiento.

**Para actualizar una instantánea de base de datos**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Snapshots (Instantáneas)**.

1. Elija la instantánea que desea actualizar. 

1. En **Actions (Acciones)**, seleccione **Upgrade Snapshot (Actualizar instantánea)**. Aparece la página **Upgrade snapshot**.

1. Elija la **New engine version (Nueva versión del motor)** a la que actualizarse.

1. Elija **Save changes (Guardar cambios)** para actualizar la instantánea.

   Durante el proceso de actualización, todas las acciones están deshabilitadas para esta instantánea de base de datos. Además, el estado de la instantánea de base de datos cambia de **Disponible** a **Actualizando** y después cambia a **Activo** al completarse. Si la instantánea de base de datos no se puede actualizar porque se ha dañado, el estado cambia a **No disponible**. No puede recuperar el snapshot desde este estado.
**nota**  
Si la actualización de la base de datos falla, la instantánea se revierte al estado original con la versión original.

------
#### [ AWS CLI ]

Para actualizar una instantánea de base de datos a una nueva versión del motor de base de datos, ejecute el comando [modify-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-snapshot.html) de la AWS CLI. 

**Opciones**
+ `--db-snapshot-identifier`: identificador de la instantánea de base de datos que se va a actualizar. El identificador debe ser un Nombre de recurso de Amazon (ARN). Para obtener más información, consulte [Nombres de recursos de Amazon (ARN) en Amazon RDS](USER_Tagging.ARN.md).
+ `--engine-version`: versión del motor a la que se va a actualizar la instantánea de base de datos.

**Example**  
Para Linux, macOS o Unix:  

```
1. aws rds modify-db-snapshot \
2. 
3.     --db-snapshot-identifier my_db_snapshot \
4.     --engine-version new_version
```
Para Windows:  

```
1. aws rds modify-db-snapshot ^
2.     --db-snapshot-identifier my_db_snapshot ^
3.     --engine-version new_version
```

------
#### [ Amazon RDS API ]

Para actualizar una instantánea de base de datos a una nueva versión del motor de base de datos, llame a la operación [ModifyDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshot.html) de la API de RDS. 

**Parameters**
+ `DBSnapshotIdentifier`: identificador de la instantánea de base de datos que se va a actualizar. El identificador debe ser un Nombre de recurso de Amazon (ARN). Para obtener más información, consulte [Nombres de recursos de Amazon (ARN) en Amazon RDS](USER_Tagging.ARN.md). 
+ `EngineVersion`: versión del motor a la que se va a actualizar la instantánea de base de datos.

------

# Opciones de actualización para instantáneas de bases de datos con versiones de motor no compatibles con RDS para MariaDB
<a name="mariadb-upgrade-snapshot.upgrade-options"></a>

En la siguiente tabla, se muestran las versiones de motor a las que puede actualizar desde una versión de motor no compatible con las instantáneas de base de datos de RDS para MariaDB.

**nota**  
Puede que tenga que actualizar la instantánea de base de datos más de una vez para actualizar a la versión de motor que haya elegido. 


| Versión del motor de instantáneas de base de datos | Versiones del motor disponibles para su actualización | 
| --- | --- | 
| 10.0.17, 10.0.24, 10.0.28, 10.0.31, 10.0.32, 10.0.34, 10.0.35 |  10.0.38, 10.1.48, 10.6.19, 10.6.20, 10.11.9, 10.11.10, 11.4.3, 11.4.4, 11.8.3  | 
| 10.1.14, 10.1.16, 10.1.19, 10.1.23, 10.1.26, 10.1.31, 10.1.34 |  10.1.48, 10.2.44, 10.6.19, 10.6.20, 10.11.9, 10.11.10, 11.4.3, 11.4.4, 11.8.3  | 
| 10.2.11, 10.2.12, 10.2.15, 10.2.21, 10.2.32, 10.2.37, 10.2.39, 10.2.40, 10.2.41, 10.2.43 |  10.2.44, 10.3.39, 10.6.19, 10.6.20, 10.6.21, 10.11.9, 10.11.10, 10.11.11, 11.4.3, 11.4.4, 11.8.3  | 
| 10.3.8, 10.3.13, 10.3.20, 10.3.23, 10.3.28, 10.3.31, 10.3.32 |  10.3.39, 10.4.34, 10.6.19, 10.6.20 10.6.21, 10.11.9, 10.11.10, 10.11.11, 11.4.3, 11.4.4, 11.8.3  | 
| 10.4.8 |  10.4.34, 10.5.16, 10.5.17, 10.5.18, 10.5.20, 10.5.21, 10.5.22, 10.5.23, 10.5.24, 10.5.25, 10.5.26, 10.5.27, 10.5.28, 10.6.8, 10.6.10, 10.6.11, 10.6.13, 10.6.14, 10.6.15, 10.6.16, 10.6.18, 10.6.19, 10.6.20, 10.6.21, 10.11.4, 10.6.17, 10.11.5, 10.11.6, 10.11.7, 10.11.8, 10.11.9, 10.11.10, 10.11.11  | 

# Importación de datos en una instancia de base de datos de Amazon RDS para MariaDB
<a name="MariaDB.Procedural.Importing"></a>

Puede utilizar varias técnicas diferentes para importar datos en una instancia de base de datos de RDS for MariaDB. El mejor enfoque depende de varios factores:
+ Origen de los datos
+ Cantidad de datos
+ Importar una vez o de forma continua
+ Cantidad de tiempo de inactividad

 Si también está migrando una aplicación con los datos, es importante tener en cuenta la cantidad de tiempo de inactividad.

En la siguiente tabla se muestran técnicas para importar datos en una instancia de base de datos de RDS para MariaDB:

**nota**  
Amazon RDS no admite `mariadb-backup` o importación desde Amazon S3 para MariaDB.


| Origen | Cantidad de datos | Una vez o continua | Tiempo de inactividad de las aplicaciones | Técnica | Más información | 
| --- | --- | --- | --- | --- | --- | 
|  Base de datos de MariaDB existente en las instalaciones o en Amazon EC2  |  Cualquiera  |  Continuo  |  Minimal  |  Configure la replicación con una base de datos de MariaDB existente como origen de replicación. Puede configurar la replicación en una instancia de base de datos de MariaDB mediante el uso de identificadores de transacciones globales (GTID) de MariaDB cuando la instancia externa sea de la versión 10.0.24 o posterior de MariaDB, o mediante coordenadas de registro binario para las instancias de MariaDB en versiones anteriores a 10.0.24. Los identificadores de transacciones globales (GTID) de MariaDB se implementan de un modo distinto al de los GTID de MySQL, que no son compatibles con Amazon RDS.  |  [Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa](MySQL.Procedural.Importing.External.ReplMariaDB.md) [Importación de datos a una instancia de base de datos de Amazon RDS para MariaDB con tiempo de inactividad reducido](mariadb-importing-data-reduced-downtime.md)  | 
|  Cualquier base de datos existente  |  Cualquiera  |  Una vez o continua  |  Mínima  |  Utilizar AWS Database Migration Service para migrar la base de datos con un tiempo de inactividad mínimo y, para numerosos motores de base de datos, continuar las replicaciones en curso.  |  [Qué es AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) y [Uso de una base de datos compatible con MySQL como destino para AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html) en la *Guía del usuario de AWS Database Migration Service*  | 
|  Instancia de base de datos de MariaDB existente  |  Cualquiera  |  Una vez o continua  |  Mínima  |  Cree una réplica de lectura para la replicación continua. Promocione la réplica de lectura para la creación única de una nueva instancia de base de datos.  |  [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md)  | 
|  Base de datos existente de MariaDB  |  Pequeña  |  Una vez  |  Alguno  |  Copie los datos directamente en la instancia de base de datos de MariaDB con una utilidad de línea de comandos.  |  [Importación de datos de una base de datos de MariaDB externa a una instancia de base de datos de Amazon RDS para MariaDB](mariadb-importing-data-external-database.md)  | 
|  Datos no almacenados en una base de datos existente  |  Media  |  Una vez  |  Alguno  |  Cree archivos sin formato e impórtelos con instrucciones `LOAD DATA LOCAL INFILE` de MariaDB.  |  [Importación de datos de cualquier origen a una instancia de base de datos de Amazon RDS para MariaDB](mariadb-importing-data-any-source.md)  | 

**nota**  
La base de datos del sistema `mysql` contiene la información de autenticación y autorización necesaria para iniciar sesión en la instancia de base de datos y obtener acceso a los datos. La eliminación, la modificación, el cambio de nombre o el truncamiento de tablas, datos u otros contenidos de la base de datos `mysql` de la instancia de base de datos puede provocar errores e impedir el acceso a la instancia de base de datos y a los datos. En ese caso, puede restaurar la instancia de base de datos desde una instantánea con el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html) de la AWS CLI. Puede recuperar la instancia de base de datos con el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html). 

# Consideraciones sobre la importación de datos para MariaDB
<a name="MariaDB.Procedural.Importing.Advanced"></a>

En el siguiente contenido se encuentra información técnica relacionada con la carga de datos en MariaDB. Este contenido está dirigido a usuarios familiarizados con la arquitectura del servidor de MariaDB.

## Registro binario
<a name="MariaDB.Procedural.Importing.Advanced.Log"></a>

La habilitación del registro binario reduce el rendimiento de la carga de datos y requiere hasta cuatro veces más espacio en disco en comparación con el registro desactivado. El tamaño de la transacción utilizado para cargar los datos afecta directamente al rendimiento del sistema y a las necesidades de espacio en disco; las transacciones más grandes requieren más recursos.

## Tamaño de la transacción
<a name="MariaDB.Procedural.Importing.Advanced.Size"></a>

El tamaño de la transacción influye en los siguientes aspectos de las cargas de datos de MariaDB:
+ Consumo de recursos
+ Utilización del espacio en disco
+ Reanudación del proceso
+ Tiempo de recuperación
+ Formato de entrada (archivos sin formato o SQL)

En esta sección se describe el modo en que el tamaño de transacción afecta al registro binario y se argumentan los beneficios de desactivar el registro binario durante la carga de grandes volúmenes de datos. Puede habilitar y desactivar el registro binario estableciendo el periodo de retención de copia de seguridad automatizado de Amazon RDS. Un valor distinto de cero activa el registro binario y el valor cero lo desactiva. Para obtener más información, consulte [Backup retention period](USER_WorkingWithAutomatedBackups.BackupRetention.md).

En esta sección también se describe el impacto de las transacciones de gran tamaño en InnoDB y por qué es importante que los tamaños de transacción sean pequeños. 

### Transacciones pequeñas
<a name="MariaDB.Procedural.Importing.Advanced.Log.Small"></a>

En las transacciones pequeñas, el registro binario duplica el número de escrituras en disco requeridas para cargar los datos. Este efecto puede degradar el desempeño notablemente en otras sesiones de base de datos y aumentar el tiempo requerido para cargar los datos. La degradación experimentada depende en parte de los siguientes factores:
+ Tasa de carga
+ Otra actividad de la base de datos que tenga lugar durante la carga
+ Capacidad de la instancia de base de datos de Amazon RDS

Los registros binarios también consumen un espacio en disco aproximadamente igual al volumen de datos cargado hasta que se hace una copia de seguridad de los registros y se eliminan. Amazon RDS minimiza este impacto creando copias de seguridad de los registros binarios y retirándolos con frecuencia. 

### Transacciones grandes
<a name="MariaDB.Procedural.Importing.Advanced.Log.Large"></a>

En el caso de transacciones grandes, el registro binario triplica IOPS y el uso del disco por los siguientes motivos:
+ La caché del registro binario almacena temporalmente los datos de las transacciones en el disco.
+ Esta caché crece con el tamaño de la transacción, lo que consume espacio en disco.
+ Cuando se completa la transacción (confirmación o reversión), el sistema copia la caché en el registro binario.

Este proceso crea tres copias de los datos:
+ Los datos originales
+ La caché en el disco
+ La entrada del registro binario final

Cada operación de escritura implica una E/S adicional, lo que repercute aún más en el rendimiento.

Por este motivo, el registro binario requiere el triple de espacio en disco en comparación con el registro desactivado. Por ejemplo, si se cargan 10 GiB de datos en una sola transacción, se crean tres copias:
+ 10 GiB para los datos de la tabla
+ 10 GiB para la caché del registro binario
+ 10 GiB para el archivo del registro binario

El espacio total en disco temporal necesario es 30 GiB.

Consideraciones importantes sobre el espacio en disco:
+ El archivo de caché persiste hasta que finaliza la sesión o hasta que una nueva transacción crea otra caché.
+ El registro binario permanece hasta que se realiza una copia de seguridad, lo que podría retener 20 GiB (caché y registro) durante un periodo prolongado.

Si se usa `LOAD DATA LOCAL INFILE` para cargar los datos, la recuperación de datos crea una cuarta copia en caso de que la base de datos deba recuperarse desde una copia de seguridad realizada antes de la carga. Durante la recuperación, MariaDB extrae los datos desde el registro binario en un archivo sin formato. Luego, MariaDB ejecuta `LOAD DATA LOCAL INFILE`. En función del ejemplo anterior, esta recuperación requiere un espacio total en disco temporal de 40 GiB o 10 GiB cada uno para la tabla, la caché, el registro y el archivo local. Sin al menos 40 GiB de espacio libre en disco, la recuperación produce un error.

### Optimización de grandes cargas de datos
<a name="MariaDB.Procedural.Importing.AnySource.Advanced.Disable"></a>

Para grandes cargas de datos, desactive el registro binario para reducir la sobrecarga y los requisitos de espacio en disco. Puede desactivar el registro binario estableciendo el periodo de retención de copias de seguridad en 0. Una vez completada la carga, restaure el periodo de retención de copias de seguridad al valor apropiado distinto de cero. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md) y [Periodo de retención de copia de seguridad](USER_ModifyInstance.Settings.md) en la tabla de configuración.

**nota**  
Si la instancia de base de datos es una instancia de base de datos de origen para réplicas de lectura, no puede establecer el periodo de retención de copia de seguridad en 0.

Antes de cargar los datos, recomendamos que cree una instantánea de base de datos. Para obtener más información, consulte [Administración de copias de seguridad manuales](USER_ManagingManualBackups.md). 

## InnoDB
<a name="MariaDB.Procedural.Importing.Advanced.InnoDB"></a>

La siguiente información sobre las opciones de registro de reversión y recuperación ayuda a mantener pequeñas las transacciones de InnoDB para optimizar el rendimiento de la base de datos.

### Descripción del registro de reversión de InnoDB
<a name="MariaDB.Procedural.Importing.Advanced.InnoDB.Undo"></a>

La reversión es un mecanismo de registro que permite la reversión de transacciones y admite el control de concurrencia multiversión (MVCC). 

Para MariaDB 10.11 y versiones anteriores, los registros de reversión se almacenan en el espacio de tablas del sistema InnoDB (normalmente ibdata1) y se retienen hasta que el subproceso de purga los elimina. De este modo, las transacciones de carga de datos de gran tamaño pueden provocar que el espacio de tablas del sistema sea muy grande y consumir espacio en disco que no puede recuperar si no recrea la base de datos.

Para todas las versiones de MariaDB, el subproceso de purga debe esperar para eliminar cualquier registro de reversión hasta que la transacción activa más antigua se confirme o se revierta. Si la base de datos procesa otras transacciones durante la carga, los registros de reversión también se acumulan y no pueden eliminarse, incluso si se confirman las transacciones y ninguna otra transacción necesita registros de reversión para MVCC. En esta situación, todas las transacciones, incluidas las de solo lectura, se ralentizan. Esta ralentización se produce porque todas las transacciones acceden a todas las filas que cualquier transacción (no solo la transacción de carga) cambia. En efecto, las transacciones deben examinar los registros de reversión que las transacciones de carga de larga duración impidieron purgar durante una limpieza del registro de reversión. Esto afecta al rendimiento de cualquier operación que acceda a las filas modificadas. 

### Opciones de recuperación de transacciones de InnoDB
<a name="MariaDB.Procedural.Importing.Advanced.InnoDB.Rollback"></a>

Aunque InnoDB optimiza las operaciones de confirmación, las reversiones de transacciones grandes son lentas. Para una recuperación más rápida, realice una recuperación en un momento dado o restaure una instantánea de base de datos. Para obtener más información, consulte [Recuperación a un momento dado](USER_PIT.md) y [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md).

## Formatos de importación de datos
<a name="MariaDB.Procedural.Importing.Advanced.InputFormat"></a>

MariaDB admite dos formatos de importación de datos: archivos sin formato y SQL. Revise la información sobre cada formato para determinar cuál es la mejor opción para sus necesidades.

### Archivos sin formato
<a name="MariaDB.Procedural.Importing.Advanced.InputFormat.FlatFiles"></a>

Para transacciones pequeñas, cargue archivos sin formato con `LOAD DATA LOCAL INFILE`. Este formato de importación de datos puede proporcionar los siguientes beneficios en comparación con el uso de SQL:
+ Menos tráfico de red
+ Costos de transmisión de datos más bajos
+ Menor sobrecarga de procesamiento de bases de datos
+ Procesamiento más rápido

`LOAD DATA LOCAL INFILE` carga todo el archivo sin formato en una sola transacción. Mantenga pequeño el tamaño de los archivos individuales para obtener las siguientes ventajas:
+ **Posibilidad de reanudación**: puede hacer un seguimiento de los archivos que se han cargado. Si surge un problema durante la carga, puede continuar donde se detuvo. Es posible que sea necesario volver a transmitir algunos datos a Amazon RDS, pero con los archivos pequeños, el volumen es mínimo.
+ **Carga de datos en paralelo**: si tiene IOPS y ancho de banda de la red suficiente para la carga de un solo archivo, la carga en paralelo podría ahorrar tiempo.
+ **Control de la velocidad de carga**: si la carga de datos tiene un impacto negativo en otros procesos, puede controlar la velocidad de carga aumentando el intervalo entre los archivos. 

Las transacciones de gran tamaño reducen los beneficios de usar `LOAD DATA LOCAL INFILE` para importar datos. Cuando no pueda dividir una gran cantidad de datos en archivos más pequeños, considere la posibilidad de utilizar SQL.

### SQL
<a name="MariaDB.Procedural.Importing.Advanced.InputFormat.SQL"></a>

SQL tiene una ventaja fundamental con respecto a los archivos sin formato: puede mantener pequeños los tamaños de transacción. Sin embargo, SQL puede tardar mucho más en cargar que los archivos sin formato. Además, después de un error, puede ser difícil determinar dónde reanudar, ya que no se pueden reiniciar los archivos mariadb-dump. Si se produce un error durante la carga de un archivo mariadb-dump, debe modificarlo o sustituirlo antes de poder reanudar la carga. De forma alternativa, después de corregir la causa del error, puede restaurar a un momento anterior a la carga antes de cargar y volver a enviar el archivo. Para obtener más información, consulte [Recuperación a un momento dado](USER_PIT.md).

## Uso de instantáneas de base de datos de Amazon RDS para puntos de comprobación de la base de datos
<a name="MariaDB.Procedural.Importing.Advanced.Checkpoints"></a>

Si carga datos durante periodos prolongados, como horas o días, sin registro binario, utilice las instantáneas de base de datos para proporcionar puntos de comprobación periódicos para garantizar la seguridad de los datos. Cada instantánea de base de datos crea una copia coherente de la instancia de base de datos que sirve como punto de recuperación durante errores del sistema o eventos de corrupción de datos. Como las instantáneas de base de datos son rápidas, los puntos de comprobación frecuentes tienen un impacto mínimo en el rendimiento de la carga. Puede eliminar las instantáneas de base de datos anteriores sin que ello afecte a la durabilidad de la base de datos ni a las capacidades de recuperación. Para obtener más información acerca de las instantáneas de base de datos, consulte [Administración de copias de seguridad manuales](USER_ManagingManualBackups.md).

## Reducción de los tiempos de carga de bases de datos
<a name="MariaDB.Procedural.Importing.Advanced.LoadTime"></a>

Los siguientes elementos son consejos adicionales para reducir los tiempos de carga: 
+ Cree todos los índices secundarios antes de cargar los datos en las bases de datos MariaDB. A diferencia de otros sistemas de bases de datos, MariaDB reconstruye toda la tabla al agregar o modificar índices secundarios. Este proceso crea una nueva tabla con los cambios de índice, copia todos los datos y elimina la tabla original.
+ Cargue los datos en el orden de la clave principal. Para las tablas de InnoDB, esto puede reducir los tiempos de carga entre un 75 % y un 80 % y reducir el tamaño del archivo de datos en un 50 %.
+ Desactive las restricciones de clave externa estableciendo `foreign_key_checks` en `0`. Esto es obligatorio en muchos casos para archivos sin formato cargados con `LOAD DATA LOCAL INFILE`. Para cualquier carga, desactivar las comprobaciones de claves externas acelera la carga de datos. Una vez completada la carga, vuelva a habilitar las restricciones configurando `foreign_key_checks` en `1` y verifique los datos.
+ Cargue datos en paralelo a no ser que se aproxime al límite de los recursos. Para habilitar la carga simultánea en varios segmentos de la tabla, use tablas particionadas cuando sea apropiado. 
+ Para reducir la sobrecarga de ejecución de SQL, combine varias instrucciones `INSERT` en operaciones `INSERT` únicas con varios valores. `mariadb-dump` implementa esta optimización automáticamente. 
+ Reduzca las operaciones de E/S de registro de InnoDB estableciendo `innodb_flush_log_at_trx_commit` en `0`. Una vez completada la carga, restaure `innodb_flush_log_at_trx_commit` a `1`. 
**aviso**  
Si se establece `innodb_flush_log_at_trx_commit` en `0`, InnoDB vaciará sus registros cada segundo en lugar de hacerlo con cada confirmación. Esta configuración aumenta el rendimiento, pero puede conllevar el riesgo de perder transacciones si se produce un error en el sistema.
+ Si va a cargar datos en una instancia de base de datos que no tiene réplicas de lectura, establezca `sync_binlog` en `0`. Una vez completada la carga, restaure `sync_binlog parameter` a `1`.
+ Cargue los datos en una instancia de base de datos de Single-AZ antes de convertir la instancia de base de datos en una implementación Multi-AZ. Si la instancia de base de datos ya usa una implementación Multi-AZ, no se recomienda cambiar a una implementación Single-AZ para la carga de datos. Hacerlo solo proporciona mejoras marginales

# Importación de datos de una base de datos de MariaDB externa a una instancia de base de datos de Amazon RDS para MariaDB
<a name="mariadb-importing-data-external-database"></a>

Puede importar datos desde una base de datos de MariaDB existente a una instancia de base de datos de RDS para MariaDB. Esto se lleva a cabo copiando la base de datos con [mysqldump](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) o [mariadb-dump](https://mariadb.com/kb/en/mariadb-dump/) y canalizándola de forma directa en la instancia de base de datos de RDS para MariaDB. La utilidad de línea de comandos `mysqldump` o `mariadb-dump` suele utilizarse para crear copias de seguridad y transferir datos de un servidor de MariaDB a otro. Se incluye con el software de cliente de MariaDB.

A partir de MariaDB 11.0.1, debe usar `mariadb-dump` en lugar de `mysqldump`.

Un comando `mysqldump` típico para mover datos de una base de datos externa a una instancia de base de datos de Amazon RDS tiene el aspecto del ejemplo siguiente. Sustituya valores con su propia información. Para MariaDB 11.0.1 y versiones posteriores, sustituya `mysqldump` por `mariadb-dump`.

```
mysqldump -u local_user \
    --databases database_name \
    --single-transaction \
    --compress \
    --order-by-primary  \
    --routines=0 \
    --triggers=0 \
    --events=0 \
    -plocal_password | mariadb -u RDS_user \
        --port=port_number \
        --host=host_name \
        -pRDS_password
```

**importante**  
Asegúrese de no dejar un espacio entre la opción `-p` y la contraseña especificada.  
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en este ejemplo.

Asegúrese de conocer las siguientes recomendaciones y consideraciones:
+ Excluya los siguientes esquemas del archivo de volcado: 
  + `sys`
  + `performance_schema`
  + `information_schema`

  La utilidad `mysqldump` y `mariadb-dump` excluye estos esquemas de forma predeterminada.
+ Si necesita migrar usuarios y privilegios, considere la posibilidad de usar una herramienta que genere el lenguaje de control de datos (DCL) para volver a crearlos, como la utilidad [pt-show-grants](https://www.percona.com/doc/percona-toolkit/LATEST/pt-show-grants.html).
+ Para realizar la importación, asegúrese de que el usuario que lo haga tenga acceso a la instancia de base de datos. Para obtener más información, consulte [Control de acceso con grupos de seguridad](Overview.RDSSecurityGroups.md).

Los parámetros son los siguientes:
+ `-u local_user`: use este parámetro para especificar un nombre de usuario. La primera vez que utilice este parámetro, especifique el nombre de una cuenta de usuario en la base de datos de MariaDB local que identifique con el parámetro `--databases`.
+ `--databases database_name`: use para especificar el nombre de la base de datos en la instancia de MariaDB local que desea importar a Amazon RDS.
+ `--single-transaction`: use este parámetro para asegurarse de que todos los datos cargados desde la base de datos local sean coherentes en un momento determinado. Si hay otros procesos que modifican los datos mientras `mysqldump` o `mariadb-dump` los lee, el uso de este parámetro ayuda a mantener la integridad de los datos. 
+ `--compress`: use este parámetro para reducir el consumo de ancho de banda mediante la compresión de los datos de la base de datos local antes de su envío a Amazon RDS.
+ `--order-by-primary`: use este parámetro para reducir el tiempo de carga mediante la ordenación de los datos de cada tabla según su clave primaria.
+ `--routines`: úselo si existen rutinas como procedimientos almacenados o funciones en la base de datos que está copiando. Establezca el parámetro en `0`, lo que excluye las rutinas durante el proceso de importación. Después, vuelva a crear manualmente las rutinas en la base de datos de Amazon RDS.
+ `--triggers`: úselo si existen desencadenadores en la base de datos que va a copiar. Establezca el parámetro en `0`, lo que excluye los desencadenadores durante el proceso de importación. Después, vuelva a crear manualmente los desencadenadores en la base de datos de Amazon RDS.
+ `--events`: úselo si existen eventos en la base de datos que está copiando. Establezca el parámetro en `0`, lo que excluye los eventos durante el proceso de importación. Después, vuelva a crear manualmente los eventos en la base de datos de Amazon RDS. 
+ `-plocal_password`: use este parámetro para especificar una contraseña. La primera vez que use este parámetro, especifique la contraseña de la cuenta de usuario identificada con el primer parámetro `-u`.
+ `-u RDS_user`: use este parámetro para especificar un nombre de usuario. La segunda vez que utilice este parámetro, especifique el nombre de una cuenta de usuario en la base de datos predeterminada de la instancia de base de datos de MariaDB identificada con el parámetro `--host`.
+ `--port port_number`: use para especificar el puerto de la instancia de base de datos de MariaDB. El valor predeterminado es 3306, salvo que se haya cambiado al crear la instancia de base de datos.
+ `--host host_name` – se utiliza para especificar el nombre del sistema de nombres de dominio (DNS) del punto de conexión de la instancia de base de datos de Amazon RDS, por ejemplo, `myinstance.123456789012.us-east-1.rds.amazonaws.com`. Puede encontrar el valor del punto de conexión en los detalles de la instancia de base de datos en la consola de Amazon RDS.
+ `-pRDS_password`: use este parámetro para especificar una contraseña. La segunda vez que use este parámetro, debe especificar la contraseña de la cuenta de usuario identificada por el segundo parámetro `-u`.

Asegúrese de crear de forma manual procedimientos almacenados, desencadenadores, funciones o eventos en su base de datos de Amazon RDS. Si hay alguno de estos objetos en la base de datos que va a copiar, exclúyalo cuando ejecute `mysqldump` o `mariadb-dump`. Para hacerlo, incluya los siguientes parámetros con el comando `mysqldump` o `mariadb-dump`: 
+ `--routines=0`
+ `--triggers=0`
+ `--events=0`

**Ejemplo**

En el siguiente ejemplo se copia la base de datos de ejemplo `world` del host local en una instancia de base de datos de RDS para MariaDB. Sustituya valores con su propia información.

Para Linux, macOS o Unix:

```
sudo mariadb-dump -u local_user \
    --databases world \
    --single-transaction \
    --compress \
    --order-by-primary  \
    --routines=0 \
    --triggers=0 \
    --events=0 \
    -plocal_password | mariadb -u rds_user \
        --port=3306 \
        --host=my_instance.123456789012.us-east-1.rds.amazonaws.com \
        -pRDS_password
```

Para Windows:

Ejecute el siguiente comando en un símbolo del sistema que se haya abierto con un clic con el botón derecho en **Símbolo del sistema** del menú de programas de Windows y con la selección de **Ejecutar como administrador**. Sustituya valores con su propia información. 

```
mariadb-dump -u local_user ^
    --databases world ^
    --single-transaction ^
    --compress ^
    --order-by-primary  ^
    --routines=0 ^
    --triggers=0 ^
    --events=0 ^
    -plocal_password | mariadb -u RDS_user ^
        --port=3306 ^
        --host=my_instance.123456789012.us-east-1.rds.amazonaws.com ^
        -pRDS_password
```

**nota**  
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en el ejemplo.

# Importación de datos a una instancia de base de datos de Amazon RDS para MariaDB con tiempo de inactividad reducido
<a name="mariadb-importing-data-reduced-downtime"></a>

En algunos casos, es posible que tenga que importar datos de una base de datos MariaDB externa que admite una aplicación en directo a una instancia de base de datos de RDS para MariaDB. Utilice el siguiente procedimiento para minimizar el impacto en la disponibilidad de las aplicaciones. Este procedimiento también puede resultar útil al trabajar con una base de datos de gran tamaño. Con este procedimiento, puede reducir el coste de la importación al reducir la cantidad de datos que se transfieren a través de la red a AWS. 

En el procedimiento, se transfiere primero una copia de los datos de la base de datos a una instancia de Amazon EC2 y después se importan los datos a una nueva base de datos de Amazon RDS. A continuación, se usa la replicación para actualizar la base de datos de Amazon RDS al estado de la instancia externa activa, antes de redirigir la aplicación a la base de datos de Amazon RDS. Si la instancia externa es MariaDB 10.0.24 o superior y la instancia de destino es RDS para MariaDB, configure la replicación de MariaDB en función de los identificadores de transacción globales (GTID). De lo contrario, debe configurar la replicación en función de las coordenadas de los registros binarios. Si la base de datos externa la admite, recomendamos la replicación basada en GTID porque es un método más fiable. Para obtener más información, consulte [Global Transaction ID](http://mariadb.com/kb/en/mariadb/global-transaction-id/) en la documentación de MariaDB.

El siguiente diagrama muestra la importación de una base de datos de MariaDB externa a una base de datos de MariaDB en Amazon RDS.

![\[Flujo de trabajo que muestra la importación de una base de datos de MariaDB externa a una base de datos de MariaDB en Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_1.png)


## Tarea 1: Crear una copia de la base de datos existente
<a name="mariadb-importing-data-reduced-downtime-copy-database"></a>

El primer paso del proceso de migración de una gran cantidad de datos a una base de datos de RDS para MariaDB con un tiempo de inactividad mínimo es crear una copia de los datos de origen. 

El siguiente diagrama muestra la creación de una copia de seguridad de la base de datos de MariaDB.

![\[Flujo de trabajo que muestra la creación de una copia de seguridad de la base de datos de MariaDB.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_2.png)


Puede usar la utilidad `mysqldump` o `mariadb-dump` para crear una copia de seguridad de la base de datos, ya sea en formato SQL o como texto delimitado. En MariaDB 10.5, el cliente se llama [mariadb-dump](https://mariadb.com/kb/en/mariadb-dump/). A partir de MariaDB 11.0.1, debe usar `mariadb-dump` en lugar de `mysqldump`. Recomendamos que haga una prueba con cada formato en un entorno que no sea de producción para determinar con qué método tarda menos la ejecución de `mysqldump` o `mariadb-dump`.

También se recomienda comparar el rendimiento de `mysqldump` o `mariadb-dump` con el beneficio que ofrece el uso del formato de texto delimitado para la carga. Una copia de seguridad con formato de texto delimitado crea un archivo de texto separado por tabuladores por cada tabla volcada. Los archivos obtenidos pueden cargarse en paralelo con el comando `LOAD DATA LOCAL INFILE` para reducir el tiempo necesario para importar la base de datos. Para obtener más información, consulte [Paso 5: cargar los datos](mariadb-importing-data-any-source.md#mariadb-importing-data-any-source-load-data) en la importación de datos de cualquier procedimiento de origen.

Antes de iniciar la operación de copia de seguridad, asegúrese de configurar las opciones de replicación para la base de datos de MariaDB que va a copiar en Amazon RDS. Las opciones de replicación incluyen la activación del registro binario y la configuración de un ID de servidor único. La activación de estas opciones hace que el servidor comience a registrar las transacciones de la base de datos y la prepare para ser una instancia de replicación de origen en una fase posterior del proceso.

Asegúrese de conocer las siguientes recomendaciones y consideraciones:
+ Utilice la opción `--single-transaction` con `mysqldump` o `mariadb-dump` porque vuelca un estado coherente de la base de datos. Para garantizar un archivo de volcado válido, no ejecute instrucciones de lenguaje de definición de datos (DDL) mientras `mysqldump` o `mariadb-dump` se está ejecutando. Puede programar un periodo de mantenimiento para estas operaciones.
+ Excluya los siguientes esquemas del archivo de volcado: 
  + `sys`
  + `performance_schema`
  + `information_schema`

  Las utilidades `mysqldump` y `mariadb-dump` excluyen estos esquemas de forma predeterminada.
+ Si necesita migrar usuarios y privilegios, considere la posibilidad de usar una herramienta que genere el lenguaje de control de datos (DCL) para volver a crearlos, como la utilidad [pt-show-grants](https://www.percona.com/doc/percona-toolkit/LATEST/pt-show-grants.html).

### Para establecer las opciones de replicación
<a name="mariadb-importing-data-reduced-downtime-set-replication-options"></a>

1. Edite el archivo `my.cnf`. Este archivo se suele encontrar en `/etc`.

   ```
   sudo vi /etc/my.cnf
   ```

   Añada las opciones `log_bin` y `server_id` a la sección `[mysqld]`. La opción `log_bin` proporciona un identificador de nombre de archivo para los archivos de log binarios. La opción `server_id` proporciona un identificador único para el servidor en las relaciones origen-réplica.

   El siguiente ejemplo muestra la sección `[mariadb]` actualizada de un archivo `my.cnf`:

   ```
   [mariadb]
   log-bin
   server-id=1 
   log-basename=master1
   binlog-format=mixed
   ```

   Para obtener más información, consulte [Setting the Replication Source Configuration](https://mariadb.com/docs/server/ha-and-performance/standard-replication/setting-up-replication) en la documentación de MariaDB.

1. Para la replicación con un clúster de base de datos multi-AZ, habilite `gtid_strict_mode`. Para obtener más información, consulte [gtid\$1strict\$1mode](https://mariadb.com/docs/server/ha-and-performance/standard-replication/gtid#gtid_strict_mode) en la documentación de MariaDB.

   La habilitación de `gtid_strict_mode` no es necesaria para la replicación con una instancia de base de datos.

1. Reinicie el servicio `mariadb`.

   ```
   sudo service mariadb restart
   ```

### Para crear una copia de seguridad de la base de datos existente
<a name="mariadb-importing-data-reduced-downtime-create-backup"></a>

1. Cree una copia de seguridad de los datos con la utilidad `mysqldump` o `mariadb-dump`, especificando el formato SQL o de texto delimitado.

   Para mejorar el desempeño y asegurar la integridad de los datos, use las opciones `--order-by-primary` y `--single-transaction` para `mysqldump` y `mariadb-dump`.

   Para evitar incluir la base de datos de sistema de MySQL en la copia de seguridad, no use la opción `--all-databases` con `mysqldump` o `mariadb-dump`. Para obtener más información, consulte [Creating a Data Snapshot Using mysqldump](https://dev.mysql.com/doc/mysql-replication-excerpt/8.0/en/replication-howto-mysqldump.html) en la documentación de MySQL.

   Use `chmod`, si es necesario, para asegurarse de que es posible escribir en el directorio donde se va a crear el archivo de copia de seguridad.
**importante**  
En Windows, ejecute el símbolo del sistema como administrador.
   + Para generar la salida en formato SQL, ejecute el siguiente comando. Para versiones de MariaDB 10.11 y anteriores, sustituya `mariadb-dump` por `mysqldump`.

     Para Linux, macOS o Unix:

     ```
     sudo mariadb-dump \
         --databases database_name \
         --master-data=2  \
         --single-transaction \
         --order-by-primary \
         -r backup.sql \
         -u local_user \
         -ppassword
     ```
**nota**  
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en el ejemplo.

     Para Windows:

     ```
     mariadb-dump ^
         --databases database_name ^
         --master-data=2  ^
         --single-transaction ^
         --order-by-primary ^
         -r backup.sql ^
         -u local_user ^
         -ppassword
     ```
**nota**  
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en el ejemplo.
   + Para generar la salida en formato de texto delimitado, ejecute el siguiente comando. Para MariaDB 11.01 y versiones posteriores, sustituya `mysqldump` por `mariadb-dump`.

     Para Linux, macOS o Unix:

     ```
     sudo mysqldump \
         --tab=target_directory \
         --fields-terminated-by ',' \
         --fields-enclosed-by '"' \
         --lines-terminated-by 0x0d0a \
         database_name \
         --master-data=2 \
         --single-transaction \
         --order-by-primary \
         -ppassword
     ```

     Para Windows:

     ```
     mysqldump ^
         --tab=target_directory ^
         --fields-terminated-by "," ^
         --fields-enclosed-by """ ^
         --lines-terminated-by 0x0d0a ^
         database_name ^
         --master-data=2 ^
         --single-transaction ^
         --order-by-primary ^
         -ppassword
     ```
**nota**  
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en el ejemplo.  
Asegúrese de crear de forma manual procedimientos almacenados, desencadenadores, funciones o eventos en su base de datos de Amazon RDS. Si hay alguno de estos objetos en la base de datos que va a copiar, exclúyalo cuando ejecute `mysqldump` o `mariadb-dump`. Para hacerlo, incluya los siguientes argumentos con el comando `mysqldump` o `mariadb-dump`:   
`--routines=0`
`--triggers=0`
`--events=0`

     Al ejecutar `mysqldump` y especificar el formato de texto delimitado, se devuelve un comentario `CHANGE MASTER TO`. Este comentario contiene el nombre y la ubicación del archivo de registro maestro. Si la instancia externa es distinta de MariaDB 10.0.23 o anterior, tenga en cuenta los valores de `MASTER_LOG_FILE` y `MASTER_LOG_POS`. Necesita estos valores al configurar la replicación.

     Se devuelve el siguiente resultado para las versiones de MariaDB.

     ```
     -- Position to start replication or point-in-time recovery from
     --
     -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin-changelog.000031', MASTER_LOG_POS=107;
     ```

1. Si la instancia externa que utiliza es MariaDB versión 10.0.24 o posterior, use la reproducción basada en GTID. Ejecute `SHOW MASTER STATUS` en la instancia de MariaDB externa para obtener el nombre y ubicación del archivo de registro binario y, a continuación, conviértalos en un GTID ejecutando `BINLOG_GTID_POS` en la instancia de MariaDB externa.

   ```
   SELECT BINLOG_GTID_POS('binary_log_file_name', binary_log_file_position);
   ```

   Tenga en cuenta el GTID devuelto. Necesita GTID para configurar la replicación.

1. Comprima los datos copiados para reducir los recursos de red necesarios para copiarlos a la base de datos de Amazon RDS. Tenga en cuenta el tamaño del archivo de copia de seguridad. Necesitará esta información para determinar el tamaño de la instancia de Amazon EC2 que se debe crear. Cuando haya terminado, comprima el archivo de copia de seguridad con GZIP o la utilidad de compresión que prefiera. 
   + Para comprimir la salida en formato SQL, ejecute el siguiente comando:

     ```
     gzip backup.sql
     ```
   + Para comprimir la salida en formato de texto delimitado, ejecute el siguiente comando:

     ```
     tar -zcvf backup.tar.gz target_directory
     ```

## Tarea 2: Crear una instancia de Amazon EC2 y copiar la base de datos comprimida
<a name="mariadb-importing-data-reduced-downtime-create-ec2-copy-database"></a>

La copia del archivo de copia de seguridad comprimido a una instancia Amazon EC2 requiere menos recursos de red que una copia directa de los datos sin comprimir entre las instancias de base de datos. Una vez que los datos se encuentran en Amazon EC2, puede copiarlos desde allí directamente a la base de datos de MariaDB. Para ahorrar en el costo de los recursos de red, la instancia de Amazon EC2 debe estar en la misma Región de AWS que la instancia de base de datos de Amazon RDS. Tener la instancia de Amazon EC2 en la misma Región de AWS que la base de datos de Amazon RDS también reduce la latencia de red durante la importación.

El siguiente diagrama muestra cómo copiar la copia de seguridad de la base de datos a una instancia de Amazon EC2.

![\[Flujo de trabajo que muestra cómo copiar la copia de seguridad de la base de datos a una instancia de Amazon EC2.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_3.png)


### Para crear una instancia Amazon EC2 y copiar los datos
<a name="mariadb-importing-data-reduced-downtime-create-ec2"></a>

1. En la Región de AWS donde tiene pensado crear la base de datos de Amazon RDS, cree una nube privada virtual (VPC), un grupo de seguridad de VPC y una subred de VPC. Asegúrese de que las reglas de entrada del grupo de seguridad de VPC permiten las direcciones IP necesarias para que la aplicación se conecte a AWS. Puede especificar un intervalo de direcciones IP, por ejemplo, `203.0.113.0/24`, u otro grupo de seguridad de VPC. Puede usar la [Consola de Amazon VPC](https://console.aws.amazon.com/vpc) para crear y administrar VPC, subredes y grupos de seguridad. Para obtener más información, consulte [Introducción a Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html#getting-started) en la *Guía del usuario de Amazon Virtual Private Cloud*.

1. Abra la [consola de Amazon EC2](https://console.aws.amazon.com/ec2) y elija la Región de AWS que contendrá la instancia de Amazon EC2 y la base de datos de Amazon RDS. Lance una instancia Amazon EC2 utilizando la VPC, la subred y el grupo de seguridad que creó en el paso 1. Asegúrese de seleccionar un tipo de instancia con suficiente espacio de almacenamiento para el archivo de copia de seguridad de base de datos sin comprimir. Para obtener más información sobre las instancias de Amazon EC2, consulte [Introducción a Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html) en la *Guía del usuario de Amazon Elastic Compute Cloud*.

1.  Para conectarse a la base de datos de Amazon RDS desde la instancia de Amazon EC2, edite el grupo de seguridad de VPC. Agregue una regla de entrada que especifique la dirección IP privada de la instancia de EC2. La dirección IP privada aparece en la pestaña **Details (Detalles)** del panel **Instance (Instancia)** de la consola de EC2. Para editar el grupo de seguridad de VPC y agregar una regla de entrada, elija **Security Groups (Grupos de seguridad)** en el panel de navegación de la consola de EC2, elija el grupo de seguridad y, luego, agregue una regla de entrada para MySQL o Aurora que especifique la dirección IP privada de la instancia de EC2. Para obtener información sobre cómo agregar una regla de entrada a un grupo de seguridad de VPC, consulte [Reglas de grupo de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html) en la *Guía del usuario de Amazon Virtual Private Cloud*.

1. Copie el archivo de copia de seguridad de base de datos comprimido del sistema local a la instancia Amazon EC2. Use `chmod`, si es necesario, para asegurarse de que tiene permiso de escritura para el directorio de destino de la instancia de Amazon EC2. Puede utilizar `scp` o un cliente de Secure Shell (SSH) para copiar el archivo. El siguiente comando es un comando `scp` de ejemplo:

   ```
   scp -r -i key pair.pem backup.sql.gz ec2-user@EC2 DNS:/target_directory/backup.sql.gz
   ```
**importante**  
Al copiar la información confidencial, asegúrese de usar un protocolo de transferencia de red seguro.

1. Establezca una conexión con la instancia de Amazon EC2 e instale las últimas actualizaciones y las herramientas de cliente de MariaDB con los comandos siguientes:

   ```
   sudo yum update -y
   sudo yum install mariadb1011-client-utils -y
   ```

   Para obtener más información, consulte [Conexión a la instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-connect-to-instance-linux) para instancias de Linux en la *Guía del usuario de Amazon Elastic Compute Cloud* y [conectores de MariaDB](https://mariadb.com/docs/connectors) en la documentación de MariaDB. 

1. Una vez establecida la conexión la instancia Amazon EC2 descomprima el archivo de copia de seguridad de base de datos. Los siguientes comandos son ejemplos.
   + Para descomprimir la salida en formato SQL, ejecute el siguiente comando:

     ```
     gzip backup.sql.gz -d
     ```
   + Para descomprimir la salida en formato de texto delimitado, ejecute el siguiente comando:

     ```
     tar xzvf backup.tar.gz
     ```

## Tarea 3: creación de una base de datos de MariaDB e importación de los datos desde la instancia de Amazon EC2
<a name="mariadb-importing-data-reduced-downtime-create-database-import-data"></a>

Al crear una instancia de base de datos de RDS para MariaDB en la misma Región de AWS que la instancia de Amazon EC2, puede importar el archivo de copia de seguridad de base de datos desde Amazon EC2 más rápidamente que a través de Internet.

El siguiente diagrama muestra la importación de la copia de seguridad desde una instancia de Amazon EC2 a una base de datos de MariaDB.

![\[Flujo de trabajo que muestra la importación de la copia de seguridad desde la instancia de EC2 a la base de datos de MariaDB.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_4.png)


### Creación de una base de datos de MariaDB e importación de los datos
<a name="mariadb-importing-data-reduced-downtime-create-database"></a>

1. Determine la clase de la instancia de base de datos y la cantidad de espacio de almacenamiento requeridas para atender la carga de trabajo prevista para esta base de datos de Amazon RDS. Como parte de este proceso, decida cuánto espacio y qué capacidad de procesamiento requieren los procedimientos de carga de datos. Decida también lo que se necesita para manejar la carga de trabajo de producción. Puede estimar esto en función del tamaño y los recursos de la base de datos de MariaDB de origen. Para obtener más información, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md).

1. Cree una instancia de base de datos en la Región de AWS que contenga la instancia de Amazon EC2. Siga las instrucciones en [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md) y use las siguientes directrices:
   + Especifique una versión del motor de base de datos compatible con la instancia de base de datos de origen. 
   + Especifique la misma nube privada virtual (VPC) y el mismo grupo de seguridad de VPC que para la instancia de Amazon EC2. De este modo se asegura de que la instancia Amazon EC2 y la instancia de Amazon RDS sean visibles mutuamente a través de la red. Asegúrese de que la instancia de base de datos sea de acceso público. Para configurar la replicación con la base de datos de origen como se describe en la siguiente sección, la instancia de base de datos debe ser accesible públicamente.
   + No configure varias zonas de disponibilidad, retenciones de copia de seguridad ni réplicas de lectura hasta haber importado la copia de seguridad de la base de datos. Una vez completada la importación, puede configurar Multi-AZ y la retención de copia de seguridad para la instancia de producción.

1. Revise las opciones de configuración predeterminadas para la base de datos de Amazon RDS. Si el grupo de parámetros predeterminado para la base de datos no tiene las opciones de configuración que desea, busque otro que sea adecuado o cree un grupo de parámetros nuevo. Para obtener más información acerca de cómo crear un grupo de parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md). 

1. Conéctese a la nueva base de datos de Amazon RDS como usuario maestro. Cree los usuarios necesarios para admitir a los administradores, las aplicaciones y los servicios que necesitan acceso a la instancia de base de datos. El nombre de host para la base de datos de Amazon RDS es el valor de **Punto de conexión** para esta instancia de base de datos, sin el número de puerto; por ejemplo, `mysampledb.123456789012.us-west-2.rds.amazonaws.com`. Puede encontrar el valor del punto de conexión en los detalles de la base de datos en la consola de Amazon RDS.

1. Conéctese a la instancia de Amazon EC2. Para obtener más información, consulte [Conexión a la instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-connect-to-instance-linux) para instancias de Linux en la *Guía del usuario de Amazon Elastic Compute Cloud*. 

1. Conecte con la base de datos de Amazon RDS como host remoto desde la instancia de Amazon EC2 con el comando `mysql`. El siguiente comando es un ejemplo:

   ```
   mysql -h host_name -P 3306 -u db_master_user -p
   ```

   El *host\$1name* es el punto de conexión de la base de datos de Amazon RDS.

1. En la petición de `mysql`, ejecute el comando `source` y pásele el nombre del archivo de volcado de la base de datos. Este comando carga los datos en la instancia de base de datos de Amazon RDS.
   + Para el formato SQL, utilice el siguiente comando: 

     ```
     MariaDB [(none)]> source backup.sql;
     ```
   + Para el formato de texto delimitado, cree primero la base de datos, si no es la predeterminada que se creó cuando se configuró la base de datos de Amazon RDS. 

     ```
     MariaDB [(none)]> create database database_name;
     MariaDB [(none)]> use database_name;
     ```

     A continuación, cree las tablas.

     ```
     MariaDB [(none)]> source table1.sql
     MariaDB [(none)]> source table2.sql
     etc...
     ```

     Importe entonces los datos.

     ```
     MariaDB [(none)]> LOAD DATA LOCAL INFILE 'table1.txt' INTO TABLE table1 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '0x0d0a';
     MariaDB [(none)]> LOAD DATA LOCAL INFILE 'table2.txt' INTO TABLE table2 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '0x0d0a';
     etc...
     ```

     Para mejorar el rendimiento, puede ejecutar estas operaciones en paralelo desde varias conexiones, de modo que todas las tablas se creen y luego se carguen al mismo tiempo.
**nota**  
Si utilizó alguna opción de formato de datos con `mysqldump` o `mariadb-dump` en el volcado inicial de la tabla, asegúrese de utilizar las mismas opciones con `LOAD DATA LOCAL INFILE` para garantizar una interpretación adecuada del contenido del archivo de datos.

1. Ejecute una consulta `SELECT` sencilla en una o dos de las tablas de la base de datos importada para comprobar que la importación se ha completado correctamente.

Si ya no necesita la instancia de Amazon EC2 utilizada en este procedimiento, termine la instancia de EC2 para reducir el uso de recursos de AWS. Para terminar una instancia de EC2, consulte [Terminación de una instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#terminating-instances-console) en la *Guía del usuario de Amazon Elastic Compute Cloud*.

## Tarea 4: Replicación de los datos de la base de datos externa a la nueva base de datos de Amazon RDS
<a name="mariadb-importing-data-reduced-downtime-replicate-data"></a>

Es probable que la base de datos de origen se haya actualizado durante el tiempo que tardó en copiar y transferir los datos a la base de datos MariaDB. Puede utilizar la replicación para actualizar la base de datos copiada con la base de datos de origen.

![\[Flujo de trabajo que muestra la replicación de datos desde la base de datos de MariaDB externa a la base de datos en Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_5.png)


Los permisos requeridos para comenzar la replicación en una base de datos de Amazon RDS están restringidos y no están disponibles para el usuario principal de Amazon RDS. Por ello, utilice el procedimiento almacenado de Amazon RDS adecuado: 
+ [mysql.rds\$1set\$1external\$1master](mysql-stored-proc-replicating.md#mysql_rds_set_external_master) 
+ [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md) para configurar la replicación y [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) para iniciar la replicación

### Para iniciar la replicación
<a name="mariadb-importing-data-reduced-downtime-start-replication"></a>

En la tarea 1, [cuando estableció las opciones de replicación](#mariadb-importing-data-reduced-downtime-set-replication-options), activó el registro binario y estableció un ID de servidor único para la base de datos de origen. Ahora, puede configurar la base de datos de Amazon RDS como réplica estableciendo la base de datos activa como instancia de replicación de origen.

1. En la consola de Amazon RDS, agregue la dirección IP del servidor que aloja la base de datos de origen al grupo de seguridad de VPC configurado para la base de datos de Amazon RDS. Para obtener más información sobre la configuración de un grupo de seguridad de VPC, consulte [Configuración de reglas de grupos de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-group-rules.html) en la *Guía del usuario de Amazon Virtual Private Cloud*. 

   Es posible que también necesite configurar la red local para permitir las conexiones desde la dirección IP de la base de datos de Amazon RDS para que se pueda comunicar con la instancia de origen. Para encontrar la dirección IP de la base de datos de Amazon RDS, use el comando `host`:

   ```
   host host_name
   ```

   El *host\$1name* es el nombre de DNS del punto de conexión de la base de datos de Amazon RDS, por ejemplo, `myinstance.123456789012.us-east-1.rds.amazonaws.com`. Puede encontrar el valor del punto de conexión en los detalles de la instancia de base de datos en la consola de Amazon RDS.

1. Con el cliente que prefiera, conecte con la instancia de origen y cree un usuario para la replicación. Esta cuenta se usa únicamente para la replicación y debe estar limitada a su dominio para mejorar la seguridad. El siguiente comando es un ejemplo:

   ```
   CREATE USER 'repl_user'@'mydomain.com' IDENTIFIED BY 'password';
   ```
**nota**  
Especifique credenciales distintas de las que se muestran aquí como práctica recomendada de seguridad.

1. En la instancia de origen, conceda al usuario de replicación los privilegios `REPLICATION CLIENT` y `REPLICATION SLAVE`. Por ejemplo, para conceder los privilegios `REPLICATION CLIENT` y `REPLICATION SLAVE` referidos a todas las bases de datos al usuario "`repl_user`" del dominio, ejecute el siguiente comando:

   ```
   GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'mydomain.com';
   ```

1. Si utilizó el formato SQL para crear el archivo de copia de seguridad y la instancia externa no es MariaDB 10.0.24 o posterior, observe el contenido de ese archivo ejecutando el siguiente comando:

   ```
   cat backup.sql
   ```

   El archivo contiene un comentario `CHANGE MASTER TO` que contiene el nombre y la posición del archivo de registro maestro. Este comentario se incluye en el archivo de copia de seguridad cuando se usa la opción `--master-data` con `mysqldump`. Tenga en cuenta los valores de `MASTER_LOG_FILE` y `MASTER_LOG_POS`.

   ```
   --
   -- Position to start replication or point-in-time recovery from
   --
   
   -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin-changelog.000031', MASTER_LOG_POS=107;
   ```

   Si utilizó el formato de texto delimitado para crear el archivo de copia de seguridad y la instancia externa no es MariaDB 10.0.24 o posterior, ya debe haber obtenido las coordenadas del registro binario del paso 1 en la tarea 1 [cuando creó una copia de seguridad de la base de datos existente](#mariadb-importing-data-reduced-downtime-create-backup).

   Si la instancia externa es MariaDB 10.0.24 o posterior, ya debe haber obtenido el GTID desde el que se inicia la replicación del paso 2 en la tarea 1 [cuando creó una copia de seguridad de la base de datos existente](#mariadb-importing-data-reduced-downtime-create-backup).

1. Convertir la base de datos de Amazon RDS en la réplica. Si la instancia externa no es MariaDB 10.0.24 o una versión posterior, conéctese a la base de datos de Amazon RDS como usuario maestro e identifique la base de datos de origen como la instancia de replicación de origen con el procedimiento almacenado [mysql.rds\$1set\$1external\$1master](mysql-stored-proc-replicating.md#mysql_rds_set_external_master).

   Si tiene un archivo de copia de seguridad con formato SQL, utilice el nombre de archivo de registro y la ubicación del registro principal que determinó en el paso 4. Si utilizó formato de texto delimitado, utilice el nombre y la posición que determinó cuando se crearon los archivos de copia de seguridad. El siguiente comando es un ejemplo:

   ```
   CALL mysql.rds_set_external_master ('myserver.mydomain.com', 3306,
       'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 1);
   ```
**nota**  
Especifique credenciales distintas de las que se muestran aquí como práctica recomendada de seguridad.

   Si la instancia externa es MariaDB 10.0.24 o una versión posterior, conéctese a la base de datos de Amazon RDS como usuario maestro e identifique la base de datos de origen como la instancia de replicación de origen con el procedimiento almacenado [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md). Utilice el GTID que determinó en el paso 2 de la tarea 1 [cuando creó una copia de seguridad de la base de datos existente](#mariadb-importing-data-reduced-downtime-create-backup). El siguiente comando es un ejemplo:

   ```
   CALL mysql.rds_set_external_master_gtid ('source_server_ip_address', 3306, 'ReplicationUser', 'password', 'GTID', 1); 
   ```

   `source_server_ip_address` es la dirección IP de la instancia de replicación de origen. Una dirección DNS privada de EC2 no se admite actualmente.
**nota**  
Especifique credenciales distintas de las que se muestran aquí como práctica recomendada de seguridad.

1. En la base de datos de Amazon RDS, para empezar la replicación, ejecute el comando siguiente que usa el procedimiento almacenado [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication):

   ```
   CALL mysql.rds_start_replication;
   ```

1. En la base de datos de Amazon RDS, para determinar si la réplica está actualizada con la instancia de replicación de origen, ejecute el comando [SHOW REPLICA STATUS](https://dev.mysql.com/doc/refman/8.0/en/show-replica-status.html). Los resultados del comando `SHOW REPLICA STATUS` incluyen el campo `Seconds_Behind_Master`. Cuando el campo `Seconds_Behind_Master` devuelve 0, la réplica está actualizada con la instancia de replicación de origen.

   Para una instancia de base de datos de MariaDB 10.5, 10.6, 10.11, 11.4 u 11.8, use el procedimiento almacenado [mysql.rds\$1replica\$1status](mysql_rds_replica_status.md) en lugar de ejecutar el comando de MySQL.

1. Una vez que la base de datos de Amazon RDS esté actualizada, active las copias de seguridad automatizadas para poder restaurar la base de datos si es necesario. Puede activar o modificar copias de seguridad automatizadas para la base de datos de Amazon RDS mediante la [consola de Amazon RDS](https://console.aws.amazon.com/rds/). Para obtener más información, consulte [Introducción a las copias de seguridad](USER_WorkingWithAutomatedBackups.md).

## Tarea 5: Redirigir la aplicación en funcionamiento a la instancia de Amazon RDS
<a name="mariadb-importing-data-reduced-downtime-redirect-app"></a>

Una vez que la base de datos de MariaDB esté actualizada con la instancia de replicación de origen, puede actualizar la aplicación activa para utilizar la instancia de Amazon RDS. 

![\[Flujo de trabajo que muestra la detención de la replicación y el direccionamiento de la aplicación en funcionamiento a la base de datos en Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDBToRDS_6.png)


### Redirección de la aplicación activa a la base de datos de MariaDB y detención de la replicación
<a name="mariadb-importing-data-reduced-downtime-redirect-app-stop-app"></a>

1. Para añadir el grupo de seguridad de VPC para la base de datos de Amazon RDS, añada la dirección IP del servidor que aloja la aplicación. Para obtener más información sobre la modificación de un grupo de seguridad de VPC, consulte [Configuración de reglas de grupos de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-group-rules.html) en la *Guía del usuario de Amazon Virtual Private Cloud*. 

1. Compruebe que el valor del campo `Seconds_Behind_Master` en el comando [SHOW REPLICA STATUS](https://dev.mysql.com/doc/refman/8.0/en/show-replica-status.html) sea 0, lo que indica que la réplica está actualizada al estado de la instancia de reproducción de origen.

   ```
   SHOW REPLICA STATUS;
   ```

   Para una instancia de base de datos de MariaDB 10.5, 10.6, 10.11, 11.4 u 11.8, use el procedimiento [mysql.rds\$1replica\$1status](mysql_rds_replica_status.md) en lugar de ejecutar el comando de MySQL.

1. Cierre todas las conexiones con el origen cuando se completen las transacciones.

1. Actualice la aplicación para que use la base de datos de Amazon RDS. Normalmente, la actualización implicará cambar la configuración de conexión para identificar el nombre de host y el puerto de la base de datos de Amazon RDS, la cuenta de usuario y la contraseña con las que conectarse y la base de datos que se debe emplear.

1. Conéctese a la instancia de base de datos.

1. Detenga la replicación de la instancia de Amazon RDS mediante la ejecución del comando siguiente que usa el procedimiento almacenado [mysql.rds\$1stop\$1replication](mysql-stored-proc-replicating.md#mysql_rds_stop_replication):

   ```
   CALL mysql.rds_stop_replication;
   ```

1. Restablezca la configuración de replicación para que esta instancia deje de considerarse una réplica mediante la ejecución del siguiente comando que usa el procedimiento almacenado [mysql.rds\$1reset\$1external\$1master](mysql-stored-proc-replicating.md#mysql_rds_reset_external_master) en la base de datos de Amazon RDS:

   ```
   CALL mysql.rds_reset_external_master;
   ```

1. Active las características adicionales de Amazon RDS, como la compatibilidad con Multi-AZ y las réplicas de lectura. Para obtener más información, consulte [Configuración y administración de una implementación multi-AZ para Amazon RDS](Concepts.MultiAZ.md) y [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md).

# Importación de datos de cualquier origen a una instancia de base de datos de Amazon RDS para MariaDB
<a name="mariadb-importing-data-any-source"></a>

Con Amazon RDS, puede migrar datos de MariaDB existentes de cualquier origen a una instancia de base de datos de RDS para MariaDB. Puede transferir datos de bases de datos en las instalaciones, otros proveedores de nube o instancias de base de datos de RDS para MariaDB existentes a la instancia de base de datos de RDS para MariaDB de destino. Con esta funcionalidad, puede consolidar bases de datos, implementar soluciones de recuperación ante desastres o realizar la transición desde bases de datos autoadministradas. Los escenarios comunes incluyen pasar de servidores de MariaDB autoalojados a instancias de base de datos de Amazon RDS totalmente administradas, consolidar varias bases de datos MariaDB en una sola instancia de base de datos o crear entornos de prueba con datos de producción. En las siguientes secciones se proporcionan instrucciones paso a paso para importar los datos de MariaDB mediante métodos como `mariadb-dump`, archivos de copia de seguridad o replicación.

## Paso 1: crear archivos sin formato con los datos que se van a cargar
<a name="mariadb-importing-data-any-source-create-flat-files"></a>

Utilice un formato habitual, como valores separados por comas (CSV), para almacenar los datos que se deben cargar. Cada tabla debe tener su propio archivo. No puede combinar los datos de varias tablas en el mismo archivo. Dé a cada archivo el nombre de la tabla correspondiente. Puede elegir la extensión que desee para el nombre de los archivos. Por ejemplo, si el nombre de la tabla es `sales`, el nombre del archivo podría ser `sales.csv` o `sales.txt`.

Si es posible, ordene los datos según la clave principal de la tabla que se va a cargar. Esto mejorará drásticamente los tiempos de carga y minimizará los requisitos de almacenamiento en disco. 

La velocidad y la eficiencia de este procedimiento dependen de que el tamaño de los archivos sea pequeño. Si el tamaño sin comprimir de algún archivo es mayor de 1 GiB, divídalo en varios archivos y cárguelos por separado.

En los sistemas de tipo Unix (incluido Linux), utilice el comando `split`. Por ejemplo, el siguiente comando divide el archivo `sales.csv` en varios archivos de menos de 1 GiB y los divide solo en los saltos de línea (-C 1024m). Los nombres de los nuevos archivos incluyen sufijos numéricos ascendentes. El siguiente comando genera archivos con nombres como `sales.part_00` y `sales.part_01`. 

```
split -C 1024m -d sales.csv sales.part_ 
```

Otros sistemas operativos disponen de utilidades similares.

Puede almacenar los archivos sin formato en cualquier lugar. No obstante, cuando cargue los datos en el [paso 5](#mariadb-importing-data-any-source-load-data), debe invocar el intérprete de comandos de `mysql` desde la misma ubicación donde existen los archivos o utilizar la ruta absoluta de los archivos cuando ejecute `LOAD DATA LOCAL INFILE`. 

## Paso 2: Detener las aplicaciones con acceso a la instancia de base de datos de destino
<a name="mariadb-importing-data-any-source-stop-apps"></a>

Antes de iniciar una carga grande, detenga toda la actividad de aplicaciones de acceder a la instancia de base de datos de destino que prevé cargar. Se recomienda esto en particular si otras sesiones modificarán las tablas que se cargan o las tablas a las que hacen referencia. Hacer esto reduce el riesgo de violaciones de restricciones que se producen durante la carga y mejoran el desempeño de carga. También permite restaurar la instancia de base de datos al estado inmediatamente anterior a la carga sin perder los cambios efectuados por los procesos no implicados en la carga. 

Por supuesto, en ocasiones esto no será posible o no resultará práctico. Si no puede detener el acceso de las aplicaciones con acceso a la instancia de base de datos antes de la carga, tome las medidas oportunas para asegurar la disponibilidad e integridad de los datos. Los pasos específicos requeridos varían mucho en función de cada caso y de los requisitos del sitio. 

## Paso 3: crear una instantánea de base de datos
<a name="mariadb-importing-data-any-source-create-snapshot"></a>

Si tiene previsto cargar los datos en una nueva instancia de base de datos que aún está vacía, puede omitir este paso. De lo contrario, recomendamos crear instantáneas de bases de datos de la instancia de base de datos de Amazon RDS elegida como destino antes y después de la carga de los datos. Las instantáneas de base de datos de Amazon RDS son copias de seguridad completas de la instancia de base de datos que puede usar para restaurar la instancia de base de datos a un estado conocido. Cuando se inicia una instantánea de base de datos, las operaciones de E/S de la instancia de base de datos se suspenden de forma temporal mientras se crea una copia de seguridad de la base de datos. 

La creación de una instantánea de base de datos inmediatamente antes de la carga permite restaurar la base de datos al estado previo a la carga, si es necesario. Una instantánea de base de datos tomada inmediatamente después de la carga le evita tener que volver a cargar los datos en caso de error. También puede usar instantáneas de bases de datos después de la carga para importar datos a nuevas instancias de bases de datos. 

En el ejemplo siguiente se ejecuta el comando [create-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html) de la AWS CLI para crear una instantánea de base de datos de la instancia `AcmeRDS` y se otorga el identificador `"preload"` a la instantánea de base de datos.

Para Linux, macOS o Unix:

```
aws rds create-db-snapshot \
    --db-instance-identifier AcmeRDS \
    --db-snapshot-identifier preload
```

Para Windows:

```
aws rds create-db-snapshot ^
    --db-instance-identifier AcmeRDS ^
    --db-snapshot-identifier preload
```

También puede utilizar la funcionalidad de restauración de instantáneas de bases de datos para crear instancias de bases de datos de prueba para simulacros o para deshacer cambios realizados durante la carga. 

Tenga en cuenta que al restaurar una base de datos a partir de una instantánea de base de datos se crea una instancia nueva de base de datos que, como todas las instancias de base de datos, tiene un identificador y un punto de conexión únicos. Para restaurar la instancia de base de datos sin cambiar de punto de conexión, primero, elimine la instancia de base de datos para poder reutilizar el mismo punto de conexión. 

Por ejemplo, para crear una instancia de base de datos para simulacros u otras pruebas, asigne a la instancia de base de datos su propio identificador. En el ejemplo, el identificador es `AcmeRDS-2`. El ejemplo se conecta a la instancia de base de datos mediante el punto de conexión asociado con `AcmeRDS-2`. Para obtener más información, consulte [restore-db-instance-from-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html).

Para Linux, macOS o Unix:

```
aws rds restore-db-instance-from-db-snapshot \
    --db-instance-identifier AcmeRDS-2 \
    --db-snapshot-identifier preload
```

Para Windows:

```
aws rds restore-db-instance-from-db-snapshot ^
    --db-instance-identifier AcmeRDS-2 ^
    --db-snapshot-identifier preload
```

Para reutilizar el punto de conexión existente, es necesario eliminar primero la instancia de base de datos y, luego, asignar el mismo identificador a la base de datos restaurada. Para obtener más información, consulte [delete-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-instance.html). 

En el ejemplo siguiente se toma una instantánea de base de datos final de la instancia de base de datos antes de eliminarla. Esto es opcional, pero recomendable. 

Para Linux, macOS o Unix:

```
aws rds delete-db-instance \
    --db-instance-identifier AcmeRDS \
    --final-db-snapshot-identifier AcmeRDS-Final

aws rds restore-db-instance-from-db-snapshot \
    --db-instance-identifier AcmeRDS \
    --db-snapshot-identifier preload
```

Para Windows:

```
aws rds delete-db-instance ^
    --db-instance-identifier AcmeRDS ^
    --final-db-snapshot-identifier AcmeRDS-Final

aws rds restore-db-instance-from-db-snapshot ^
    --db-instance-identifier AcmeRDS ^
    --db-snapshot-identifier preload
```

## Paso 4 (opcional): Desactivar copias de seguridad automatizadas de Amazon RDS
<a name="mariadb-importing-data-any-source-turn-off-automated-backups"></a>

**aviso**  
No desactive las copias de seguridad automatizadas si necesita realizar una recuperación en un momento dado.

La desactivación de las copias de seguridad automatizadas es una optimización del rendimiento y no es un requisito para las cargas de datos. La desactivación de las copias de seguridad automatizadas elimina todas las copias de seguridad existentes. Como resultado, después de desactivar las copias de seguridad automatizadas, no es posible la recuperación en un momento dado. Las instantáneas de base de datos manuales no se ven afectadas por la desactivación de las copias de seguridad automatizadas. Todas las instantáneas de base de datos manuales existentes seguirán estando disponibles para su restauración.

La desactivación de las copias de seguridad automatizadas reduce el tiempo de carga en aproximadamente un 25 % y reduce el espacio de almacenamiento necesario durante la carga. Si planea cargar los datos en una instancia de base de datos nueva que no contiene datos, desactivar las copias de seguridad es una forma sencilla de acelerar la carga y evitar utilizar el almacenamiento adicional que las copias de seguridad necesitan. Sin embargo, en algunos casos, es posible que tenga previsto cargar en una instancia de base de datos que ya contiene datos. Si es así, evalúe los beneficios de la desactivación de las copias de seguridad frente al impacto de perder la capacidad de realizar una recuperación a un momento dado. 

Las instancias de base de datos tienen copias de seguridad automatizadas activadas de forma predeterminada (con un periodo de retención de un día). Para desactivar las copias de seguridad automatizadas, configure el periodo de retención de copia de seguridad en cero. Después de la carga, puede volver a activar las copias de seguridad mediante la configuración del periodo de retención de copia de seguridad en un valor distinto de cero. Para activar o desactivar las copias de seguridad, Amazon RDS apaga la instancia de base de datos y, a continuación, la reinicia para activar o desactivar el registro de MariaDB. 

Ejecute el comando `modify-db-instance` de la AWS CLI para establecer el valor cero como período de retención de copia de seguridad y aplicar el cambio inmediatamente. Al configurar cero como periodo de retención es necesario reiniciar la instancia de base de datos, por lo que debe esperar a que la operación se complete para poder continuar. Para obtener más información, consulte [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html).

Para Linux, macOS o Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier AcmeRDS \
    --apply-immediately \
    --backup-retention-period 0
```

Para Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier AcmeRDS ^
    --apply-immediately ^
    --backup-retention-period 0
```

Puede comprobar el estado de la instancias de base de datos con el comando [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) de la AWS CLI. En el siguiente ejemplo se muestra el estado de la instancia de base de datos de la instancia de base de datos `AcmeRDS`:

```
aws rds describe-db-instances --db-instance-identifier AcmeRDS --query "*[].{DBInstanceStatus:DBInstanceStatus}"
```

Cuando el estado de la instancia de base de datos es `available`, está listo para continuar con el siguiente paso. 

## Paso 5: cargar los datos
<a name="mariadb-importing-data-any-source-load-data"></a>

Para leer las filas de los archivos sin formato en las tablas de base de datos, use la instrucción `LOAD DATA LOCAL INFILE` de MariaDB.

**nota**  
Debe invocar el intérprete de comandos de `mariadb` desde la misma ubicación donde existen los archivos o utilizar la ruta absoluta de los archivos cuando ejecute `LOAD DATA LOCAL INFILE`.

En el siguiente ejemplo, se muestra cómo cargar datos de un archivo denominado `sales.txt` en una tabla denominada `Sales` en la base de datos:

```
MariaDB [(none)]> LOAD DATA LOCAL INFILE 'sales.txt' INTO TABLE Sales FIELDS TERMINATED BY ' ' ENCLOSED BY '' ESCAPED BY '\\';
Query OK, 1 row affected (0.01 sec)
Records: 1  Deleted: 0  Skipped: 0  Warnings: 0
```

Para obtener más información sobre la instrucción `LOAD DATA`, consulte [LOAD DATA INFILE](https://mariadb.com/docs/server/reference/sql-statements/data-manipulation/inserting-loading-data/load-data-into-tables-or-index/load-data-infile) en la documentación de MariaDB.

## Paso 6: Activar las copias de seguridad automatizadas de Amazon RDS
<a name="mariadb-importing-data-any-source-turn-on-automated-backups"></a>

Si desactiva las copias de seguridad automatizadas de Amazon RDS en el [paso 4](#mariadb-importing-data-any-source-turn-off-automated-backups), una vez terminada la carga, active las copias de seguridad automatizadas estableciendo nuevamente el periodo de retención de copia de seguridad en el valor que había antes de la carga. Como se ha indicado en el paso 4, Amazon RDS reinicia la instancia de base de datos, por lo que debe estar preparado para una breve interrupción del servicio.

El siguiente ejemplo ejecuta el comando [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) de la AWS CLI para activar las copias de seguridad automatizadas para la instancia de base de datos `AcmeRDS` y establecer el periodo de retención en un día:

Para Linux, macOS o Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier AcmeRDS \
    --backup-retention-period 1 \
    --apply-immediately
```

Para Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier AcmeRDS ^
    --backup-retention-period 1 ^
    --apply-immediately
```

# Uso de la replicación de MariaDB en Amazon RDS
<a name="USER_MariaDB.Replication"></a>

Normalmente se utilizan réplicas de lectura para configurar la replicación entre instancias de base de datos de Amazon RDS. Para obtener información general acerca de las réplicas de lectura, consulte [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md). Para obtener información específica acerca de cómo utilizar las réplicas de lectura en Amazon RDS for MariaDB, consulte [Uso de réplicas de lectura de MariaDB](USER_MariaDB.Replication.ReadReplicas.md). 

También puede configurar la replicación en función de las coordenadas de los registros binarios para las instancias de base de datos de MariaDB. Para las instancias de MariaDB, también puede configurar la replicación en función de los ID de transacción global (GTID), lo que proporciona más seguridad en caso de bloqueo. Para obtener más información, consulte [Configuración de la replicación basada en GTID con una instancia de origen externa](MariaDB.Procedural.Replication.GTID.md). 

Estas opciones de replicación están disponibles con for MariaDB:
+ Puede configurar la replicación entre una instancia de base de datos de RDS for MySQL o MariaDB y una instancia MySQL o MariaDB externa a Amazon RDS. Para obtener más información sobre cómo configurar la replicación con un origen externo, consulte [Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa](MySQL.Procedural.Importing.External.ReplMariaDB.md).
+ Puede configurar la replicación para importar bases de datos desde una instancia de MySQL o MariaDB externa a Amazon RDS o para exportar bases de datos a esas instancias. Para obtener más información, consulte [Importación de datos a una instancia de base de datos de Amazon RDS para MariaDB con tiempo de inactividad reducido](mariadb-importing-data-reduced-downtime.md) y [Exportación de datos desde una instancia de base de datos MySQL mediante replicación](MySQL.Procedural.Exporting.NonRDSRepl.md).

Para cualquiera de estas opciones de replicación, puede utilizar replicación basada en filas, basada en instrucciones o mixta. La replicación basada en filas solo replica las filas cambiadas que resulten de una instrucción SQL. La replicación basada en instrucciones replica toda la instrucción SQL. La replicación mixta utiliza la replicación basada en instrucciones siempre que sea posible, pero alterna a la replicación basada en filas cuando se ejecutan las instrucciones SQL que no son seguras para la replicación basada en instrucciones. En la mayoría de los casos, se recomienda la replicación mixta. El formato de registro binario de la instancia de base de datos determina si la replicación se basa en filas, instrucciones o mixta. Para obtener información acerca de la configuración del formato de registro binario, consulte [Configuración de registros binarios de MariaDB](USER_LogAccess.MariaDB.BinaryFormat.md).

Para obtener información sobre la compatibilidad de replicación entre las versiones de MariaDB, consulte [Replication Compatibility](https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/#replication-compatibility) en la documentación de MariaDB.

**Topics**
+ [Uso de réplicas de lectura de MariaDB](USER_MariaDB.Replication.ReadReplicas.md)
+ [Configuración de la replicación basada en GTID con una instancia de origen externa](MariaDB.Procedural.Replication.GTID.md)
+ [Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa](MySQL.Procedural.Importing.External.ReplMariaDB.md)

# Uso de réplicas de lectura de MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas"></a>

A continuación, encontrará información específica acerca de cómo utilizar las réplicas de lectura en Amazon RDS for MySQL. Para obtener información general sobre las réplicas de lectura e instrucciones sobre cómo usarlas, consulte [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md).
+ [Configuración de filtros de replicación con MariaDB](USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.md)
+ [Configuración de la replicación retrasada con MariaDB](USER_MariaDB.Replication.ReadReplicas.DelayReplication.md)
+ [Eliminación de réplicas de lectura con MariaDB](USER_MariaDB.Replication.ReadReplicas.Updates.md)
+ [Implementaciones de réplicas de lectura Multi-AZ con MariaDB](USER_MariaDB.Replication.ReadReplicas.MultiAZ.md)
+ [Uso de réplicas de lectura en cascada con RDS para MariaDB](USER_MariaDB.Replication.ReadReplicas.Cascading.md)
+ [Monitoreo de réplicas de lectura de MariaDB](USER_MariaDB.Replication.ReadReplicas.Monitor.md)
+ [Inicio y detención de replicaciones con réplicas de lectura de MariaDB](USER_MariaDB.Replication.ReadReplicas.StartStop.md)
+ [Solución de problemas de una réplica de lectura de MariaDB](USER_ReadRepl.Troubleshooting.MariaDB.md)

## Eliminación de réplicas de lectura con MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.Configuration"></a>

Para que una instancia de base de datos de MariaDB pueda servir como origen de replicación, debe habilitar las copias de seguridad automáticas en la instancia de base de datos de origen estableciendo el periodo de retención de copia de seguridad en un valor distinto de 0. Este requisito también es válido para una réplica de lectura que sea la instancia de base de datos de origen de otra réplica de lectura. 

Puede crear hasta 15 réplicas de lectura a partir de una instancia de base de datos de dentro de la misma región. Para que la replicación sea eficaz, cada réplica de lectura debe tener la misma cantidad de recursos informáticos y de almacenamiento que la instancia de base de datos de origen. Si modifica la escala de la instancia de base de datos de origen, debe ajustar también la escala de las réplicas de lectura. 

RDS para MariaDB admite réplicas de lectura en cascada. Para obtener información sobre cómo configurar réplicas de lectura en cascada, consulte [Uso de réplicas de lectura en cascada con RDS para MariaDB](USER_MariaDB.Replication.ReadReplicas.Cascading.md).

Puede ejecutar varias acciones de creación y eliminación de réplicas de lectura al mismo tiempo que hagan referencia a la misma instancia de base de datos de origen. Al realizar estas acciones, permanezca dentro del límite de 15 réplicas de lectura para cada instancia de origen.

# Configuración de filtros de replicación con MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters"></a>

Puede utilizar filtros de replicación para especificar qué bases de datos y tablas se replican con una réplica de lectura. Los filtros de replicación pueden incluir bases de datos y tablas en la replicación o excluirlas de la replicación.

Los siguientes son algunos casos de uso para filtros de replicación:
+ Para reducir el tamaño de una réplica de lectura. Con el filtrado de replicación, puede excluir las bases de datos y las tablas que no son necesarias en la réplica de lectura.
+ Para excluir bases de datos y tablas de réplicas de lectura por razones de seguridad.
+ Para replicar diferentes bases de datos y tablas para casos de uso específicos en diferentes réplicas de lectura. Por ejemplo, puede utilizar réplicas de lectura específicas para análisis o fragmentación.
+ Con una instancia de base de datos que tiene réplicas de lectura en diferentes Regiones de AWS, para replicar diferentes bases de datos o tablas en diferentes regiones de Regiones de AWS.

**nota**  
También puede utilizar filtros de reproducción para especificar qué bases de datos y tablas se reproducen con una instancia de base de datos primaria de MariaDB que está configurada como una réplica en una topología de reproducción entrante. Para obtener más información acerca de esta configuración, consulte [Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa](MySQL.Procedural.Importing.External.Repl.md).

**Topics**
+ [Parámetros de filtrado de replicación con Amazon RDS for MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Configuring)
+ [Limitaciones del filtrado de replicación con for MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Limitations)
+ [Ejemplos de filtrado de replicación con for MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Examples)
+ [Visualización de los filtros de replicación para una réplica de lectura](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Viewing)

## Parámetros de filtrado de replicación con Amazon RDS for MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Configuring"></a>

Para configurar filtros de replicación, establezca los siguientes parámetros de filtrado de replicación en la réplica de lectura:
+ `replicate-do-db` – Replicar los cambios en las bases de datos especificadas. Cuando se establece este parámetro para una réplica de lectura, solo se replican las bases de datos especificadas en el parámetro.
+ `replicate-ignore-db` – No replicar los cambios en las bases de datos especificadas. Cuando el parámetro `replicate-do-db` se establece para una réplica de lectura, este parámetro no se evalúa.
+ `replicate-do-table` – Replicar los cambios en las tablas especificadas. Cuando se establece este parámetro para una réplica de lectura, solo se replican las tablas especificadas en el parámetro. Además, cuando se establece el parámetro `replicate-do-db` o `replicate-ignore-db`, la base de datos que incluye las tablas especificadas debe incluirse en la replicación con la réplica de lectura.
+ `replicate-ignore-table` – No replicar los cambios en las tablas especificadas. Cuando el parámetro `replicate-do-table` se establece para una réplica de lectura, este parámetro no se evalúa.
+ `replicate-wild-do-table` – Replicar tablas en función de la base de datos y los patrones de nombre de tabla especificados. Se admiten los caracteres comodín `%` y `_`. Cuando se establece el parámetro `replicate-do-db` o `replicate-ignore-db`, asegúrese de incluir la base de datos que incluye las tablas especificadas en la replicación con la réplica de lectura.
+ `replicate-wild-ignore-table` – No replicar tablas en función de la base de datos y los patrones de nombre de tabla especificados. Se admiten los caracteres comodín `%` y `_`. Cuando el parámetro `replicate-do-table` o `replicate-wild-do-table` se establece para una réplica de lectura, este parámetro no se evalúa.

Los parámetros se evalúan en el orden en que se enumeran. Para obtener más información sobre cómo funcionan estos parámetros, consulte [la documentación de MariaDB](https://mariadb.com/kb/en/replication-filters/#replication-filters-for-replication-slaves).

Por defecto, cada uno de estos parámetros tiene un valor vacío. En cada réplica de lectura, puede utilizar estos parámetros para establecer, cambiar y eliminar los filtros de replicación. Cuando establezca uno de estos parámetros, separe cada filtro de los demás con una coma.

Puede utilizar los caracteres comodín `%` y `_` en los parámetros `replicate-wild-do-table` y `replicate-wild-ignore-table`. El comodín `%` coincide con cualquier número de caracteres y el comodín `_` solo coincide con un carácter. 

El formato de registro binario de la instancia de base de datos de origen es importante para la replicación, ya que determina el registro de los cambios en los datos. La configuración del parámetro `binlog_format` determina si la replicación está basada en filas o en instrucciones. Para obtener más información, consulte [Configuración de registros binarios de MariaDB](USER_LogAccess.MariaDB.BinaryFormat.md).

**nota**  
Todas las instrucciones de lenguaje de definición de datos (DDL) se replican como instrucciones, independientemente de la configuración de `binlog_format` en la instancia de base de datos de origen. 

## Limitaciones del filtrado de replicación con for MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Limitations"></a>

Las siguientes limitaciones se aplican al filtrado de replicación con for MariaDB:
+ Cada parámetro de filtrado de replicación tiene un límite de 2000 caracteres.
+ Las comas no son compatibles con los filtros de replicación.
+ Las opciones `binlog_do_db` y `binlog_ignore_db` de MariaDB para el filtrado de registros binarios no son compatibles.
+ El filtrado de replicación no es compatible con transacciones XA.

  Para obtener más información, consulte [Restricciones a las transacciones XA ](https://dev.mysql.com/doc/refman/8.0/en/xa-restrictions.html) en la documentación de MySQL.
+ No se admite el filtrado de reproducción con para MariaDB versión 10.2.

## Ejemplos de filtrado de replicación con for MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Examples"></a>

Para configurar el filtrado de replicación para una réplica de lectura, modifique los parámetros de filtrado de replicación en el grupo de parámetros asociado a la réplica de lectura.

**nota**  
No puede modificar un grupo de parámetros predeterminado. Si la réplica de lectura emplea un grupo de parámetros predeterminado, cree un nuevo grupo de parámetros y asócielo con la réplica de lectura. Para obtener más información acerca de los grupos de parámetros de base de datos, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Puede establecer parámetros en un grupo de parámetros mediante la API de RDS, Consola de administración de AWS o AWS CLI. Para obtener información acerca de cómo configurar los parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md). Cuando se establecen parámetros en un grupo de parámetros, todas las instancias de base de datos asociadas al grupo de parámetros utilizan la configuración de los parámetros. Si establece los parámetros de filtrado de replicación en un grupo de parámetros, asegúrese de que el grupo de parámetros está asociado solo con réplicas de lectura. Deje los parámetros de filtrado de replicación vacíos para las instancias de base de datos de origen

En los siguientes ejemplos se establecen los parámetros mediante el uso de AWS CLI. Estos ejemplos establecen `ApplyMethod` en `immediate` para que los cambios de los parámetros se produzcan inmediatamente después de que se complete el comando de la CLI. Si desea que se aplique un cambio pendiente después de reiniciar la réplica de lectura, establezca `ApplyMethod` en `pending-reboot`. 

Los siguientes ejemplos establecen filtros de replicación:
+ [Including databases in replication](#rep-filter-in-dbs-mariadb)
+ [Including tables in replication](#rep-filter-in-tables-mariadb)
+ [Including tables in replication with wildcard characters](#rep-filter-in-tables-wildcards-mariadb)
+ [Escaping wildcard characters in names](#rep-filter-escape-wildcards-mariadb)
+ [Excluding databases from replication](#rep-filter-ex-dbs-mariadb)
+ [Excluding tables from replication](#rep-filter-ex-tables-mariadb)
+ [Excluding tables from replication using wildcard characters](#rep-filter-ex-tables-wildcards-mariadb)<a name="rep-filter-in-dbs-mariadb"></a>

**Example Inclusión de bases de datos en la replicación**  
En el ejemplo siguiente se incluyen las bases de datos `mydb1` y `mydb2` en la replicación. Cuando se establece `replicate-do-db` para una réplica de lectura, solo se replican las bases de datos especificadas en el parámetro.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-do-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-do-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-in-tables-mariadb"></a>

**Example Inclusión de tablas en la replicación**  
En el siguiente ejemplo se incluyen las tablas `table1` y `table2` en la base de datos `mydb1` en la replicación.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-do-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-do-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-in-tables-wildcards-mariadb"></a>

**Example Inclusión de tablas en la replicación mediante el uso de caracteres comodín**  
En el ejemplo siguiente se incluyen tablas con nombres que empiezan con `orders` y `returns` en la base de datos `mydb` en la replicación.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-escape-wildcards-mariadb"></a>

**Example Escape de caracteres comodín en nombres**  
En el siguiente ejemplo se muestra cómo utilizar el carácter de escape `\` para aplicar el escape de un carácter comodín que forma parte de un nombre.   
Supongamos que tiene varios nombres de tabla en la base de datos `mydb1` que comienzan con `my_table` y desea incluir estas tablas en la replicación. Los nombres de tabla incluyen un guion bajo, que también es un carácter comodín, por lo que el ejemplo aplica el escape al guion bajo en los nombres de tabla.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "my\_table%", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "my\_table%", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-dbs-mariadb"></a>

**Example Exclusión de bases de datos de la replicación**  
En el siguiente ejemplo se excluyen las bases de datos `mydb1` y `mydb2` de la replicación.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-ignore-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-ignore-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-tables-mariadb"></a>

**Example Exclusión de tablas de la replicación**  
En el siguiente ejemplo se excluyen las tablas `table1` y `table2` en la base de datos `mydb1` de la replicación.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-ignore-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-ignore-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-tables-wildcards-mariadb"></a>

**Example Exclusión de tablas de la replicación mediante el uso de caracteres comodín**  
En el siguiente ejemplo se excluyen las tablas con nombres que empiezan con `orders` y `returns` en la base de datos `mydb` de la replicación.  
Para Linux, macOS o:Unix  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-ignore-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```
En:Windows  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-ignore-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```

## Visualización de los filtros de replicación para una réplica de lectura
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Viewing"></a>

Puede ver los filtros de replicación para una réplica de lectura de las siguientes maneras:
+ Verifique la configuración de los parámetros de filtrado de replicación en el grupo de parámetros asociado a la réplica de lectura.

  Para obtener instrucciones, consulte [Visualización de los valores de parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Viewing.md).
+ En un cliente de MariaDB, conéctese a la réplica de lectura y ejecute la instrucción `SHOW REPLICA STATUS`.

  En la salida, los siguientes campos muestran los filtros de replicación para la réplica de lectura:
  + `Replicate_Do_DB`
  + `Replicate_Ignore_DB`
  + `Replicate_Do_Table`
  + `Replicate_Ignore_Table`
  + `Replicate_Wild_Do_Table`
  + `Replicate_Wild_Ignore_Table`

  Para obtener más información acerca de estos campos, consulte [Comprobación del estado de replicación](https://dev.mysql.com/doc/refman/8.0/en/replication-administration-status.html) en la documentación de MySQL.
**nota**  
Versiones anteriores de MariaDB utilizaban `SHOW SLAVE STATUS` en lugar de `SHOW REPLICA STATUS`. Si usa una versión de MariaDB anterior a la 10.5, utilice `SHOW SLAVE STATUS`. 

# Configuración de la replicación retrasada con MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.DelayReplication"></a>

Puede utilizar la replicación retrasada como estrategia de recuperación de desastres. Con la replicación retardada, se especifica el tiempo mínimo, en segundos, que se retardará la replicación desde la instancia de origen a la réplica de lectura. En caso de desastre, por ejemplo, si se elimina una tabla involuntariamente, el procedimiento siguiente permite recuperarse rápidamente del desastre:
+ Detenga la replicación en la réplica de lectura antes de que se envíe a ella el cambio que provocó el desastre.

  Para detener la replicación, utilice el procedimiento almacenado [mysql.rds\$1stop\$1replication](mysql-stored-proc-replicating.md#mysql_rds_stop_replication).
+ Promocione la réplica de lectura para que sea la nueva instancia de base de datos de origen; para ello, siga las instrucciones de [Promoción de una réplica de lectura para convertirla en una instancia de base de datos independiente](USER_ReadRepl.Promote.md).

**nota**  
La replicación retrasada es compatible con MariaDB 10.6 y versiones posteriores.
Use procedimientos almacenados para configurar la replicación retardada. La reproducción retrasada no se puede configurar con la Consola de administración de AWS, la AWS CLI o la API de Amazon RDS.
Puede usar la replicación basada en identificadores de transacciones globales (GTID) en una configuración de replicación retrasada.

**Topics**
+ [Configuración de la replicación retrasada durante la creación de réplicas de lectura](#USER_MariaDB.Replication.ReadReplicas.DelayReplication.ReplicaCreation)
+ [Modificación de la replicación retrasada para una réplica de lectura existente](#USER_MariaDB.Replication.ReadReplicas.DelayReplication.ExistingReplica)
+ [Promoción de una réplica de lectura](#USER_MariaDB.Replication.ReadReplicas.DelayReplication.Promote)

## Configuración de la replicación retrasada durante la creación de réplicas de lectura
<a name="USER_MariaDB.Replication.ReadReplicas.DelayReplication.ReplicaCreation"></a>

Para configurar la replicación retardada para cualquier réplica de lectura futura creada a partir de una instancia de base de datos, ejecute el procedimiento almacenado [mysql.rds\$1set\$1configuration](mysql-stored-proc-configuring.md#mysql_rds_set_configuration) con el parámetro `target delay`.

**Para configurar la replicación retardada durante la creación de réplicas de lectura**

1. Utilice un cliente de MariaDB para conectarse como usuario maestro a la instancia de base de datos MariaDB que vaya a ser el origen de las réplicas de lectura.

1. Ejecute el procedimiento almacenado [mysql.rds\$1set\$1configuration](mysql-stored-proc-configuring.md#mysql_rds_set_configuration) con el parámetro `target delay`.

   Por ejemplo, ejecute el siguiente procedimiento almacenado para especificar que la replicación se retardará al menos una hora (3600 segundos) para todas las réplicas de lectura creadas desde la instancia de base de datos actual.

   ```
   call mysql.rds_set_configuration('target delay', 3600);
   ```
**nota**  
Después de ejecutar este procedimiento almacenado, todas las réplicas de lectura que cree mediante la AWS CLI o la API de Amazon RDS se configurarán con la reproducción retardada el número de segundos especificado.

## Modificación de la replicación retrasada para una réplica de lectura existente
<a name="USER_MariaDB.Replication.ReadReplicas.DelayReplication.ExistingReplica"></a>

Para modificar la replicación retardada para una réplica de lectura existente, ejecute el procedimiento almacenado [mysql.rds\$1set\$1source\$1delay](mysql-stored-proc-replicating.md#mysql_rds_set_source_delay).

**Para modificar la replicación retardada de una réplica de lectura existente**

1. Use un cliente de MariaDB para conectarse como usuario maestro a la réplica de lectura.

1. Utilice el procedimiento almacenado [mysql.rds\$1stop\$1replication](mysql-stored-proc-replicating.md#mysql_rds_stop_replication) para detener la replicación.

1. Ejecute el procedimiento almacenado [mysql.rds\$1set\$1source\$1delay](mysql-stored-proc-replicating.md#mysql_rds_set_source_delay).

   Por ejemplo, ejecute el siguiente procedimiento almacenado para especificar que la replicación en la réplica de lectura se retardará al menos una hora (3600 segundos).

   ```
   call mysql.rds_set_source_delay(3600);
   ```

1. Utilice el procedimiento almacenado [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) para iniciar la replicación.

## Promoción de una réplica de lectura
<a name="USER_MariaDB.Replication.ReadReplicas.DelayReplication.Promote"></a>

Después de que se detenga la replicación, en una situación de recuperación de desastres, puede promocionar una réplica de lectura para que sea la nueva instancia de base de datos de origen. Para obtener información acerca de la promoción de una réplica de lectura, consulte [Promoción de una réplica de lectura para convertirla en una instancia de base de datos independiente](USER_ReadRepl.Promote.md).

# Eliminación de réplicas de lectura con MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.Updates"></a>

Las réplicas de lectura se han diseñado para permitir las consultas de lectura, pero puede necesitar actualizaciones ocasionales. Por ejemplo, puede necesitar añadir un índice para acelerar los tipos concretos de consultas que obtienen acceso a la réplica. Puede habilitar las actualizaciones estableciendo el parámetro `read_only` en **0** en el grupo de parámetros de base de datos para la réplica de lectura. 

# Implementaciones de réplicas de lectura Multi-AZ con MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.MultiAZ"></a>

Puede crear una réplica de lectura a partir de implementaciones de instancia de base de datos Single-AZ o Multi-AZ. Puede usar implementaciones Multi-AZ para mejorar la durabilidad y la disponibilidad de los datos críticos, pero no puede usar la implementación Multi-AZ secundaria para responder a consultas de solo lectura. En lugar de ello, puede crear réplicas de lectura a partir de una instancia de base de datos Multi-AZ con un tráfico elevado para descargar las consultas de solo lectura. Si la instancia de origen de una implementación Multi-AZ conmuta a la secundaria, las réplicas de lectura asociadas cambian automáticamente para usar la secundaria (ahora principal) como origen de replicación. Para obtener más información, consulte [Configuración y administración de una implementación multi-AZ para Amazon RDS](Concepts.MultiAZ.md). 

Puede crear una réplica de lectura como instancia de base de datos de Multi-AZ. Amazon RDS crea una réplica en espera en otra zona de disponibilidad para permitir la conmutación por error de la réplica. La creación de su réplica de lectura como instancia de base de datos Multi-AZ es independiente de si la base de datos de origen es una instancia de base de datos Multi-AZ. 

# Uso de réplicas de lectura en cascada con RDS para MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.Cascading"></a>

RDS para MariaDB admite réplicas de lectura en cascada. Con *réplicas de lectura en cascada*, puede escalar las lecturas sin agregar sobrecarga a su instancia de base de datos de RDS para MariaDB de origen.

Con réplicas de lectura en cascada, la instancia de base de datos de RDS para MariaDB envía datos a la primera réplica de lectura de la cadena. Esa réplica de lectura envía datos a la segunda réplica de la cadena, etc. El resultado final es que todas las réplicas de lectura de la cadena tienen los cambios de la instancia de base de datos de RDS para MariaDB, pero sin la sobrecarga únicamente en la instancia de base de datos de origen.

Puede crear una serie de hasta tres réplicas de lectura en cadena a partir de una instancia de base de datos RDS para MariaDB de origen. Por ejemplo, suponga que tiene una instancia de base de datos de RDS para MariaDB, `mariadb-main`. Puede hacer lo siguiente:
+ A partir de `mariadb-main`, cree la primera réplica de lectura de la cadena, `read-replica-1`.
+ A continuación, a partir de `read-replica-1`, cree la siguiente réplica de lectura de la cadena, `read-replica-2`.
+ Por último, a partir de `read-replica-2`, cree la tercera réplica de lectura de la cadena, `read-replica-3`.

No se puede crear otra réplica de lectura más allá de esta tercera réplica de lectura en cascada de la serie para `mariadb-main`. Una serie completa de instancias desde una instancia de base de datos de origen de RDS para MariaDB hasta el final de una serie de réplicas de lectura en cascada puede constar de cuatro instancias de base de datos como máximo.

Para que las réplicas de lectura en cascada funcionen, cada instancia de origen de RDS para MariaDB debe tener las copias de seguridad automáticas activadas. Para habilitar las copias de seguridad automáticas en una réplica de lectura, primero debe crear la réplica de lectura y modificarla a continuación para habilitar las copias de seguridad automáticas. Para obtener más información, consulte [Creación de una réplica de lectura](USER_ReadRepl.Create.md).

Al igual que con cualquier réplica de lectura, puede promocionar una réplica de lectura que forma parte de una cascada. La promoción de una réplica de lectura desde dentro de una cadena de réplicas de lectura elimina esa réplica de la cadena. Por ejemplo, suponga que desea trasladar parte de la carga de trabajo de su Instancia de base de datos de `mariadb-main` a una nueva instancia para que la utilice únicamente el departamento de contabilidad. Tomando la cadena de tres réplicas de lectura del ejemplo, decide promocionar `read-replica-2`. La cadena se ve afectada de la siguiente manera:
+ Promover `read-replica-2` la elimina de la cadena de replicación.
  + Ahora es una instancia de base de datos de lectura o escritura completa.
  + Continúa replicando en `read-replica-3`, tal como hacía antes de la promoción.
+ Su `mariadb-main` sigue replicándose en `read-replica-1`.

Para obtener más información acerca de la promoción de réplicas de lectura, consulte [Promoción de una réplica de lectura para convertirla en una instancia de base de datos independiente](USER_ReadRepl.Promote.md).

# Monitoreo de réplicas de lectura de MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.Monitor"></a>

Para las réplicas de lectura de MariaDB, puede monitorear el retraso de replicación en Amazon CloudWatch mediante la visualización de la métrica `ReplicaLag` de Amazon RDS. La métrica `ReplicaLag` indica el valor del campo `Seconds_Behind_Master` del comando `SHOW REPLICA STATUS`. 

**nota**  
Versiones anteriores de MariaDB utilizaban `SHOW SLAVE STATUS` en lugar de `SHOW REPLICA STATUS`. Si usa una versión de MariaDB anterior a la 10.5, utilice `SHOW SLAVE STATUS`. 

Los motivos comunes de retardo de la replicación para MariaDB son los siguientes: 
+ Una interrupción de la red.
+ Escritura en tablas con índices en una réplica de lectura. Si el parámetro `read_only` no se ha establecido en 0 en la réplica de lectura, puede interrumpirse la replicación.
+ Uso de un motor de almacenamiento no transaccional como MyISAM. La reproducción solo se admite para el motor de almacenamiento InnoDB en MariaDB.

Cuando la métrica `ReplicaLag` llegue a 0, la réplica estará funcionando al mismo ritmo que la instancia de base de datos de origen. Si la métrica `ReplicaLag` devuelve -1, la replicación no está activa. `ReplicaLag` = -1 es equivalente a `Seconds_Behind_Master` = `NULL`. 

# Inicio y detención de replicaciones con réplicas de lectura de MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.StartStop"></a>

Puede detener y reiniciar el proceso de replicación en una instancia de base de datos de Amazon RDS llamando a los procedimientos [mysql.rds\$1stop\$1replication](mysql-stored-proc-replicating.md#mysql_rds_stop_replication) y [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) almacenados en el sistema. Puede hacerlo cuando replique entre dos instancias de Amazon RDS para las operaciones de larga duración, como la creación de índices grandes. También debe detener y comenzar la replicación cuando importe o exporte bases de datos. Para obtener más información, consulte [Importación de datos a una instancia de base de datos de Amazon RDS para MariaDB con tiempo de inactividad reducido](mariadb-importing-data-reduced-downtime.md) y [Exportación de datos desde una instancia de base de datos MySQL mediante replicación](MySQL.Procedural.Exporting.NonRDSRepl.md). 

Si la replicación se detiene durante más de 30 días consecutivos, ya sea manualmente o a causa de un error de replicación, Amazon RDS termina la replicación entre la instancia de base de datos de origen y todas las réplicas de lectura. Realiza ese procedimiento para impedir que aumenten los requisitos de almacenamiento en la instancia de base de datos de origen y que se incrementen los tiempos de conmutación por error. La instancia de base de datos de la réplica de lectura seguirá estando disponible. Sin embargo, la replicación no se podrá reanudar porque los registros binarios requeridos por la réplica de lectura se eliminan de la instancia de base de datos de origen cuando finaliza la replicación. Puede crear una nueva réplica de lectura para la instancia de base de datos de origen si desea restablecer la replicación. 

# Solución de problemas de una réplica de lectura de MariaDB
<a name="USER_ReadRepl.Troubleshooting.MariaDB"></a>

Las tecnologías de replicación para MariaDB son asíncronas. Como son asíncronas, cabe esperar aumentos ocasionales de `BinLogDiskUsage` en la instancia de base de datos de origen y de `ReplicaLag` en la réplica de lectura. Por ejemplo, en paralelo se pueden realizar gran volumen de operaciones de escritura en la instancia de base de datos de origen. En cambio, las operaciones de escritura en la réplica de lectura se serializan con un único subproceso E/S que puede provocar un retraso entre la instancia de origen y la réplica de lectura. Para obtener más información acerca de las réplicas de solo lectura en la documentación de MariaDB, vaya a [Replication Overview](http://mariadb.com/kb/en/mariadb/replication-overview/).

Puede hacer varias cosas para reducir el retraso entre las actualizaciones de una instancia de base de datos de origen y las actualizaciones posteriores de la réplica de lectura. Por ejemplo, puede hacer lo siguiente:
+ Dimensionar una réplica de lectura para que tenga un tamaño de almacenamiento y una clase de instancia de base de datos comparables a los de la instancia de base de datos de origen.
+ Asegurarse de que los valores de los parámetros de los grupos de parámetros de base de datos utilizados en la instancia de base de datos de origen y la réplica de lectura son compatibles. Para obtener más información y un ejemplo, consulte el análisis del parámetro `max_allowed_packet` que se puede encontrar más adelante en esta sección.

Amazon RDS monitorea el estado de la replicación de las réplicas de lectura y actualiza el campo `Replication State` de la instancia de la réplica de lectura a `Error` si la replicación se detiene por cualquier motivo. Un ejemplo de ello pueden ser las consultas DML que se ejecutan en la réplica de lectura y que entran en conflicto con las actualizaciones realizadas en la instancia de base de datos de origen. 

Puede revisar los detalles del error asociado mostrado por el motor de MariaDB visualizando el campo `Replication Error`. También se generan eventos que indican el estado de la réplica de lectura, entre los que se incluyen [RDS-EVENT-0045](USER_Events.Messages.md#RDS-EVENT-0045), [RDS-EVENT-0046](USER_Events.Messages.md#RDS-EVENT-0046) y [RDS-EVENT-0047](USER_Events.Messages.md#RDS-EVENT-0047). Para obtener más información acerca de los eventos y la suscripción a ellos, consulte [Uso de notificaciones de eventos de Amazon RDS](USER_Events.md). Si aparece un mensaje de error de MariaDB, revise el error en la [documentación sobre los mensajes de error de MariaDB](http://mariadb.com/kb/en/mariadb/mariadb-error-codes/).

Un problema frecuente que puede causar errores de replicación es que el valor del parámetro `max_allowed_packet` de una réplica de lectura sea inferior al parámetro `max_allowed_packet` de la instancia de base de datos de origen. El parámetro `max_allowed_packet` es un parámetro personalizado que se puede establecer en un grupo de parámetros de base de datos y que se usa para especificar el tamaño máximo del código DML que se puede ejecutar en la base de datos. En algunos casos, el valor del parámetro `max_allowed_packet` en el grupo de parámetros de base de datos asociado a una instancia de base de datos de origen es inferior al valor del parámetro `max_allowed_packet` del grupo de parámetros de base de datos asociado a la réplica de lectura de origen. En estos casos, el proceso de replicación puede provocar un error (paquete mayor que los bytes de "max\$1allowed\$1packet") y parar la replicación. Puede resolver el error haciendo que el origen y la réplica de lectura usen grupos de parámetros de base de datos con los mismos valores del parámetro `max_allowed_packet`. 

Entre las situaciones comunes que pueden causar errores de replicación se incluyen las siguientes:
+ Escritura en tablas en una réplica de lectura. Si desea crear índices en una réplica de lectura, debe establecer el parámetro `read_only` en **0** para crear los índices. Si se escribe en las tablas de la réplica de lectura, podría interrumpirse la replicación. 
+ Uso de un motor de almacenamiento no transaccional como MyISAM. Las réplicas de lectura requieren un motor de almacenamiento transaccional. La reproducción solo se admite para el motor de almacenamiento InnoDB en MariaDB.
+ Uso de consultas no deterministas que no sean seguras, como `SYSDATE()`. Para obtener más información, consulte [Determinación de instrucciones seguras e inseguras en el registro binario](https://dev.mysql.com/doc/refman/8.0/en/replication-rbr-safe-unsafe.html). 

Si decide que es seguro hacer caso omiso de un error, puede seguir los pasos que se describen en la sección [Omisión del error de replicación actual de RDS para MySQL](Appendix.MySQL.CommonDBATasks.SkipError.md). De lo contrario, puede eliminar la réplica de lectura y crear una instancia que use el mismo identificador de instancias de bases de datos para que el punto de enlace siga siendo el mismo que en la réplica de lectura antigua. Si se corrige un error de replicación, `Replication State` cambia a *replicating*.

Para las instancias de base de datos de MariaDB, en algunos casos las réplicas de lectura no se pueden cambiar a la secundaria si algunos eventos de binlog no se vacían durante el error. En estos casos, elimine y vuelva a crear manualmente las réplicas de lectura. Puede reducir la probabilidad de que esto ocurra al establecer los siguientes valores de parámetro: `sync_binlog=1` y `innodb_flush_log_at_trx_commit=1`. Estos ajustes pueden reducir el desempeño, así que es aconsejable probar su impacto antes de implementar los cambios en un entorno de producción.

# Configuración de la replicación basada en GTID con una instancia de origen externa
<a name="MariaDB.Procedural.Replication.GTID"></a>

Se puede configurar la reproducción basada en identificadores de transacciones globales (GTID) desde una instancia de MariaDB externa de una versión 10.0.24 o posterior en una instancia de base de datos MariaDB. Siga estas directrices al configurar una instancia de origen externa y una réplica en Amazon RDS:
+ Monitorice los eventos de conmutación por error para la instancia de base de datos de for MariaDB que sea su réplica. Si se produce una conmutación por error, la instancia de base de datos que es la réplica se puede volver a crear en un nuevo host con una dirección de red diferente. Para obtener información acerca de la monitorización de los eventos de conmutación por error, consulte [Uso de notificaciones de eventos de Amazon RDS](USER_Events.md).
+ Mantenga los registros binarios (binlogs) en la instancia de origen hasta que haya verificado que se han aplicado en la réplica. Este mantenimiento garantiza que puede restaurar la instancia de origen en caso de error.
+ Active las copias de seguridad automatizadas en su instancia de base de datos de MariaDB en Amazon RDS. La activación de las copias de seguridad automatizadas garantiza que puede restaurar su réplica a un momento dado si necesita volver a sincronizar la instancia de origen y la réplica. Para obtener información acerca de las copias de seguridad y la restauración a un momento dado, consulte [Copia de seguridad, restauración y exportación de datos](CHAP_CommonTasks.BackupRestore.md).

**nota**  
Los permisos requeridos para comenzar la replicación en una instancia de base de datos MariaDB están restringidos y no están disponibles para el usuario maestro Amazon RDS. Por este motivo, debe usar los comandos Amazon RDS, [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md) y [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) para configurar la replicación entre su base de datos en funcionamiento y su base de datos de Amazon RDS for MariaDB. 

Para iniciar la replicación entre una instancia de origen externa y una instancia de base de datos de MariaDB en Amazon RDS, utilice el siguiente procedimiento. <a name="MariaDB.Procedural.Importing.External.Repl.Procedure"></a>

**Para iniciar la replicación**

1. Configure la instancia de MariaDB de origen como de solo lectura:

   ```
   mysql> FLUSH TABLES WITH READ LOCK;
   mysql> SET GLOBAL read_only = ON;
   ```

1. Obtenga el GTID actual de la instancia de MariaDB externa. Puede hacerlo usando `mysql` o el editor de consultas que prefiera para ejecutar `SELECT @@gtid_current_pos;`. 

   El GTID tiene el formato `<domain-id>-<server-id>-<sequence-id>`. Un GTID típico tiene un aspecto similar a **0-1234510749-1728**. Para obtener más información acerca de los GTID y sus componentes, consulte [Global Transaction ID](http://mariadb.com/kb/en/mariadb/global-transaction-id/) en la documentación de MariaDB. 

1. Copie la base de datos de la instancia de MariaDB externa en la instancia de base de datos de MariaDB co `mysqldump`. Para las bases de datos muy grandes, puede usar el procedimiento que se describe en [Importación de datos a una instancia de base de datos de Amazon RDS para MariaDB con tiempo de inactividad reducido](mariadb-importing-data-reduced-downtime.md). 

   Para Linux, macOS o Unix:

   ```
   mysqldump \
       --databases database_name \
       --single-transaction \
       --compress \
       --order-by-primary \
       -u local_user \
       -plocal_password | mysql \
           --host=hostname \
           --port=3306 \
           -u RDS_user_name \
           -pRDS_password
   ```

   Para Windows:

   ```
   mysqldump ^
       --databases database_name ^
       --single-transaction ^
       --compress ^
       --order-by-primary \
       -u local_user \
       -plocal_password | mysql ^
           --host=hostname ^
           --port=3306 ^
           -u RDS_user_name ^
           -pRDS_password
   ```
**nota**  
Asegúrese de que no haya ningún espacio entre la opción `-p` y la contraseña que haya escrito.  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

   Use las opciones `--host`, `--user (-u)`, `--port` y `-p` del comando `mysql` para especificar el nombre de host, el nombre de usuario, el puerto y la contraseña para conectarse a la instancia de base de datos MariaDB. El nombre de host es el nombre de DNS tomado del punto de enlace de la instancia de base de datos MariaDB, por ejemplo `myinstance.123456789012.us-east-1.rds.amazonaws.com`. Puede encontrar el valor del punto de enlace en los detalles de la instancia en la consola de administración de Amazon RDS. 

1. Haga que la instancia de MariaDB de origen vuelva a admitir la escritura.

   ```
   mysql> SET GLOBAL read_only = OFF;
   mysql> UNLOCK TABLES;
   ```

1. En la consola de administración Amazon RDS, agregue la dirección IP del servidor que aloja la base de datos MariaDB externa en el grupo de seguridad de VPC de la instancia de base de datos MariaDB. Para obtener más información acerca de la modificación de un grupo de seguridad de VPC, vaya a [Grupos de seguridad de su VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) en la *Guía del usuario de Amazon Virtual Private Cloud*. 

   La dirección IP puede cambiar cuando se cumplen las siguientes condiciones:
   + Está usando una dirección IP pública para la comunicación entre la instancia de origen externa y la instancia de base de datos.
   + La instancia de origen externa se detuvo y se reinició.

   Si se cumplen esas condiciones, compruebe la dirección IP antes de añadirla.

   Es posible que también necesite configurar la red local para permitir las conexiones desde la dirección IP de la instancia de base de datos MariaDB, para que pueda comunicarse con la instancia de MariaDB externa. Para encontrar la dirección IP de la instancia de base de datos MariaDB, use el comando `host`.

   ```
   host db_instance_endpoint
   ```

   El nombre de host es el nombre de DNS tomado del punto de enlace de la instancia de base de datos MariaDB. 

1. Con el cliente que prefiera, conéctese a la instancia de MariaDB externa y cree un usuario de MariaDB que se usará para la replicación. Esta cuenta se usa únicamente para la replicación y debe estar limitada a su dominio para mejorar la seguridad. A continuación se muestra un ejemplo.

   ```
   CREATE USER 'repl_user'@'mydomain.com' IDENTIFIED BY 'password';
   ```
**nota**  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

1. Para la instancia de MariaDB externa, conceda a `REPLICATION CLIENT` y a `REPLICATION SLAVE` privilegios para el usuario de replicación. Por ejemplo, para conceder los privilegios `REPLICATION CLIENT` y `REPLICATION SLAVE` en todas las bases de datos al usuario "`repl_user`" del dominio, ejecute el siguiente comando.

   ```
   GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'mydomain.com';
   ```

1. Defina la instancia de base de datos MariaDB como réplica. Conéctese a la instancia de base de datos MariaDB como usuario maestro e identifique la base de datos MariaDB externa como instancia de origen de replicación mediante el comando [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md). Use el GTID que determinó en el paso 2. A continuación se muestra un ejemplo.

   ```
   CALL mysql.rds_set_external_master_gtid ('mymasterserver.mydomain.com', 3306, 'repl_user', 'password', 'GTID', 1);
   ```
**nota**  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

1. En la instancia de base de datos MariaDB, ejecute el comando [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) para comenzar la replicación: 

   ```
   CALL mysql.rds_start_replication; 
   ```

# Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa
<a name="MySQL.Procedural.Importing.External.ReplMariaDB"></a>

Puede configurar la replicación entre una instancia de base de datos de RDS for MySQL o MariaDB y una instancia MySQL o MariaDB externa a Amazon RDS.

**Topics**
+ [Antes de empezar](#MySQL.Procedural.Importing.External.Repl.BeforeYouBegin)
+ [Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa](#MySQL.Procedural.Importing.External.Repl.Procedure)

## Antes de empezar
<a name="MySQL.Procedural.Importing.External.Repl.BeforeYouBegin"></a>

Puede configurar la replicación usando la posición de los archivos de registro binarios de transacciones replicadas.

Los permisos requeridos para comenzar la replicación en una instancia de base de datos de Amazon RDS están restringidos y no están disponibles para el usuario maestro de Amazon RDS. Por este motivo, asegúrese de usar los comandos [mysql.rds\$1set\$1external\$1master (RDS para MariaDB y RDS para las versiones principales de MySQL 8.0 e inferiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_master) o [mysql.rds\$1set\$1external\$1source (RDS para las versiones principales de MySQL 8.4 y superiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_source) y [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) de Amazon RDS para configurar la replicación entre la base de datos en funcionamiento y la base de datos de Amazon RDS.

Para establecer el formato de registro binario para una base de datos MySQL o MariaDB, actualice el parámetro `binlog_format`. Si su instancia de base de datos usa el grupo de parámetros de instancia de base de datos predeterminado, cree un nuevo grupo de parámetros de base de datos para modificar el parámetro `binlog_format`. En MariaDB y MySQL 8.0 y versiones anteriores, el valor predeterminado de `binlog_format` es `MIXED`. Sin embargo, también puede configurar `binlog_format` como `ROW` o `STATEMENT` si necesita un formato de registro binario (binlog) concreto. Reinicie la instancia de base de datos para que el cambio entre en vigor. En MySQL 8.4 y versiones posteriores, el valor predeterminado de `binlog_format` es `ROW`.

Para obtener más información sobre configurar el parámetro `binlog_format`, consulte [Configuración del registro binario de RDS para MySQL para bases de datos Single-AZ](USER_LogAccess.MySQL.BinaryFormat.md). Para obtener más información acerca de las implicaciones de distintos tipos de replicación de MySQL, consulte [Advantages and Disadvantages of Statement-Based and Row-Based Replication](https://dev.mysql.com/doc/refman/8.0/en/replication-sbr-rbr.html) en la documentación de MySQL.

## Configuración de la replicación de posición de archivo de registro binario con una instancia de origen externa
<a name="MySQL.Procedural.Importing.External.Repl.Procedure"></a>

Siga estas directrices al configurar una instancia de origen externa y una réplica en Amazon RDS: 
+ Monitorice los eventos de conmutación por error para la instancia de base de datos de Amazon RDS que usa como réplica. Si se produce una conmutación por error, la instancia de base de datos que es la réplica se puede volver a crear en un nuevo host con una dirección de red diferente. Para obtener información acerca de la monitorización de los eventos de conmutación por error, consulte [Uso de notificaciones de eventos de Amazon RDS](USER_Events.md).
+ Mantenga los binlogs en la instancia de origen hasta que haya verificado que se han aplicado a la réplica. Este mantenimiento garantiza que se pueda restaurar la instancia de origen en caso de error.
+ Active las copias de seguridad automatizadas para la instancia de base de datos de Amazon RDS. La activación de las copias de seguridad automatizadas garantiza que puede restaurar su réplica a un momento dado si necesita volver a sincronizar la instancia de origen y la réplica. Para obtener información acerca de las copias de seguridad y la restauración a un momento dado, consulte [Copia de seguridad, restauración y exportación de datos](CHAP_CommonTasks.BackupRestore.md).

**Para configurar la replicación de archivos de registro binario con una instancia de origen externa**

1. Configure la instancia de base de datos MySQL o MariaDB de origen como de solo lectura.

   ```
   mysql> FLUSH TABLES WITH READ LOCK;
   mysql> SET GLOBAL read_only = ON;
   ```

1. Ejecute el comando `SHOW MASTER STATUS` en la instancia de base de datos MySQL o MariaDB para determinar la ubicación del binlog.

   Se recibe un resultado similar al del siguiente ejemplo.

   ```
   File                        Position  
   ------------------------------------
    mysql-bin-changelog.000031      107   
   ------------------------------------
   ```

1. Copie la base de datos de la instancia externa a la instancia de Amazon RDS con `mysqldump`. Para las bases de datos muy grandes, puede usar el procedimiento que se describe en [Importación de datos a una base de datos de Amazon RDS para MySQL con un tiempo de inactividad reducido](mysql-importing-data-reduced-downtime.md). 

   Para Linux, macOS o Unix:

   ```
   mysqldump --databases database_name \
       --single-transaction \
       --compress \
       --order-by-primary \
       -u local_user \
       -plocal_password | mysql \
           --host=hostname \
           --port=3306 \
           -u RDS_user_name \
           -pRDS_password
   ```

   Para Windows:

   ```
   mysqldump --databases database_name ^
       --single-transaction ^
       --compress ^
       --order-by-primary ^
       -u local_user ^
       -plocal_password | mysql ^
           --host=hostname ^
           --port=3306 ^
           -u RDS_user_name ^
           -pRDS_password
   ```
**nota**  
Asegúrese de que no haya ningún espacio entre la opción `-p` y la contraseña que haya escrito. 

   Para especificar el nombre de host, el nombre de usuario, el puerto y la contraseña para conectarse a su instancia de base de datos en Amazon RDS, use las opciones `--host`, `--user (-u)`, `--port` y `-p` en el comando `mysql`. El nombre de host es el nombre del servicio de nombre de dominio (DNS) tomado del punto de enlace de la instancia de base de datos de Amazon RDS, por ejemplo, `myinstance.123456789012.us-east-1.rds.amazonaws.com`. Puede encontrar el valor del punto de conexión en los detalles de la instancia en la Consola de administración de AWS.

1. Haga que la instancia MySQL o MariaDB de origen vuelvan a admitir la escritura.

   ```
   mysql> SET GLOBAL read_only = OFF;
   mysql> UNLOCK TABLES;
   ```

   Para obtener más información sobre cómo hacer copias de seguridad para su uso con replicación, consulte [la documentación de MySQL](https://dev.mysql.com/doc/refman/8.0/en/replication-solutions-backups-read-only.html).

1. En la Consola de administración de AWS, agregue la dirección IP del servidor que aloja la base de datos externa al grupo de seguridad de la nube virtual privada (VPC) para la instancia de base de datos de Amazon RDS. Para obtener más información acerca de la modificación de un grupo de seguridad de VPC, consulte [Grupos de seguridad de su VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) en la *Guía del usuario de Amazon Virtual Private Cloud*. 

   La dirección IP puede cambiar cuando se cumplen las siguientes condiciones:
   + Está usando una dirección IP pública para la comunicación entre la instancia de origen externa y la instancia de base de datos.
   + La instancia de origen externa se detuvo y se reinició.

   Si se cumplen esas condiciones, compruebe la dirección IP antes de añadirla.

   Es posible que también necesite configurar su red local para permitir las conexiones desde la dirección IP de la instancia de base de datos de Amazon RDS. Eso se hace para que la red local se pueda comunicar con la instancia de MySQL o MariaDB externa. Para encontrar la dirección IP de la instancia de base de datos de Amazon RDS, use el comando `host`.

   ```
   host db_instance_endpoint
   ```

   El nombre de host es el nombre de DNS tomado del punto de conexión de la instancia de base de datos de Amazon RDS.

1. Con el cliente que prefiera, conecte con la instancia externa y cree un usuario para la replicación. Use esta cuenta únicamente para la replicación y limítela a su dominio para mejorar la seguridad. A continuación se muestra un ejemplo. 

   ```
   CREATE USER 'repl_user'@'mydomain.com' IDENTIFIED BY 'password';
   ```
**nota**  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

1. Para la instancia externa, conceda los privilegios `REPLICATION CLIENT` y `REPLICATION SLAVE` al usuario de replicación. Por ejemplo, para conceder los privilegios `REPLICATION CLIENT` y `REPLICATION SLAVE` en todas las bases de datos al usuario "`repl_user`" del dominio, ejecute el siguiente comando.

   ```
   GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'mydomain.com';
   ```

1. Defina la instancia de base de datos de Amazon RDS como réplica, Para ello, en primer lugar, conéctese a la instancia de base de datos de Amazon RDS como usuario maestro. A continuación, identifique la base de datos de MySQL o MariaDB externa como instancia de origen usando el comando [mysql.rds\$1set\$1external\$1source (RDS para las versiones principales de MySQL 8.4 y superiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_source) o [mysql.rds\$1set\$1external\$1master (RDS para MariaDB y RDS para las versiones principales de MySQL 8.0 e inferiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_master). Use el nombre del archivo de registro maestro y la posición del registro maestro que determinó en el paso 2. Los siguientes comandos son ejemplos.

   **MySQL 8.4**

   ```
   CALL mysql.rds_set_external_source ('mysourceserver.mydomain.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 1);
   ```

   **MariaDB y MySQL 8.0 y 5.7**

   ```
   CALL mysql.rds_set_external_master ('mymasterserver.mydomain.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 1);
   ```
**nota**  
En RDS para MySQL, puede aplicar la replicación retrasada si lo desea ejecutando el procedimiento [mysql.rds\$1set\$1external\$1source\$1with\$1delay (RDS para las versiones principales de MySQL 8.4 y superiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_source_with_delay) o [mysql.rds\$1set\$1external\$1master\$1with\$1delay (RDS para MariaDB y RDS para las versiones principales de MySQL 8.0 e inferiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_master_with_delay) almacenado en su lugar. Un motivo para usar la replicación retrasada en RDS para MySQL es activar la recuperación de desastres con el procedimiento almacenado [mysql.rds\$1start\$1replication\$1until ](mysql-stored-proc-replicating.md#mysql_rds_start_replication_until). En la actualidad, RDS para MariaDB es compatible con la replicación retrasada, pero no con el procedimiento `mysql.rds_start_replication_until`.

1. En la instancia de base de datos de Amazon RDS, ejecute el comando [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) para comenzar la replicación.

   ```
   CALL mysql.rds_start_replication;
   ```

# Opciones para el motor de base de datos de MariaDB
<a name="Appendix.MariaDB.Options"></a>

A continuación, se incluyen descripciones de las opciones, o características adicionales, que están disponibles para las instancias de Amazon RDS que ejecutan el motor de base de datos MariaDB. Para activar estas opciones, puede agregarlas a un grupo de opciones personalizado y, a continuación, asociar el grupo de opciones a la instancia de base de datos. Para obtener más información acerca de cómo trabajar con grupos de opciones, consulte [Trabajo con grupos de opciones](USER_WorkingWithOptionGroups.md).

Amazon RDS admite las siguientes opciones para MariaDB: 


| ID de la opción | Versiones del motor | 
| --- | --- | 
|  `MARIADB_AUDIT_PLUGIN`  |  MariaDB 10.3 y posteriores  | 

## Compatibilidad con el complemento de auditoría MariaDB
<a name="Appendix.MariaDB.Options.AuditPlugin"></a>

Amazon RDS permite utilizar el complemento de auditoría de MariaDB en las instancias de base de datos de MariaDB. El complemento de auditoría de MariaDB registra la actividad de la base de datos, como el registro de los usuarios en la base de datos, las consultas ejecutadas en la base de datos, etc. El registro de la actividad de la base de datos se almacena en un archivo de registro.

### Configuración de opciones del complemento de auditoría
<a name="Appendix.MariaDB.Options.AuditPlugin.Options"></a>

Amazon RDS admite la siguiente configuración para la opción del complemento de auditoría de MariaDB. 

**nota**  
Si no configura una opción en la consola de RDS, RDS utilizará la configuración predeterminada. 


| Ajuste de la opción | Valores válidos | Valor predeterminado | Descripción | 
| --- | --- | --- | --- | 
| `SERVER_AUDIT_FILE_PATH` | `/rdsdbdata/log/audit/` | `/rdsdbdata/log/audit/` |  La ubicación del archivo de registro. El archivo de registro contiene el registro de la actividad especificada en `SERVER_AUDIT_EVENTS`. Para obtener más información, consulte [Visualización y descripción de archivos de registro de base de datos](USER_LogAccess.Procedural.Viewing.md) y [Archivos de registro de base de datos de MariaDB](USER_LogAccess.Concepts.MariaDB.md).   | 
| `SERVER_AUDIT_FILE_ROTATE_SIZE` | 1–1 000 000 000 | 1000000 |  El tamaño en bytes que, al alcanzarse, hace que se rote el archivo. Para obtener más información, consulte [Rotación y retención de registros para MariaDB](USER_LogAccess.MariaDB.LogFileSize.md).   | 
| `SERVER_AUDIT_FILE_ROTATIONS` | 0–100 | 9 |  Es el número de rotaciones de registro que se debe guardar cuando `server_audit_output_type=file`. Si se establece en 0, el archivo de registro no gira nunca. Para obtener más información, consulte [Rotación y retención de registros para MariaDB](USER_LogAccess.MariaDB.LogFileSize.md) y [Descarga de un archivo de registro de base de datos](USER_LogAccess.Procedural.Downloading.md).   | 
| `SERVER_AUDIT_EVENTS` | `CONNECT`, `QUERY`, `TABLE`, `QUERY_DDL`, `QUERY_DML`, `QUERY_DML_NO_SELECT`, `QUERY_DCL` | `CONNECT`, `QUERY` |  Los tipos de actividad que se van a registrar en el registro. La instalación del complemento de auditoría de MariaDB también se registra.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/Appendix.MariaDB.Options.html)  | 
| `SERVER_AUDIT_INCL_USERS` | Varios valores separados por comas | Ninguno |  Incluya solo la actividad de los usuarios especificados. De forma predeterminada, la actividad se registra para todos los usuarios. `SERVER_AUDIT_INCL_USERS` y `SERVER_AUDIT_EXCL_USERS` se excluyen mutuamente. Si agrega valores a `SERVER_AUDIT_INCL_USERS`, asegúrese de que no se agregan valores a `SERVER_AUDIT_EXCL_USERS`.   | 
| `SERVER_AUDIT_EXCL_USERS` | Varios valores separados por comas | Ninguno |  Excluya la actividad de los usuarios especificados. De forma predeterminada, la actividad se registra para todos los usuarios. `SERVER_AUDIT_INCL_USERS` y `SERVER_AUDIT_EXCL_USERS` se excluyen mutuamente. Si agrega valores a `SERVER_AUDIT_EXCL_USERS`, asegúrese de que no se agregan valores a `SERVER_AUDIT_INCL_USERS`.   El usuario `rdsadmin` consulta la base de datos cada segundo para comprobar su estado. Dependiendo de otros ajustes de configuración, esta actividad puede hacer que el tamaño del archivo de registro llegue a ser muy grande muy deprisa. Si no necesita registrar esta actividad, añada el usuario `rdsadmin` a la lista `SERVER_AUDIT_EXCL_USERS`.    `CONNECT`La actividad de siempre se registra para todos los usuarios, aunque se especifique el usuario de esta configuración de opciones.    | 
| `SERVER_AUDIT_LOGGING` | `ON` | `ON` |  El registro está activo. El único valor válido es `ON`. Amazon RDS no permite desactivar el registro. Si desea desactivar el registro, elimine el complemento de auditoría de MariaDB. Para obtener más información, consulte [Eliminación del complemento de auditoría de MariaDB](#Appendix.MariaDB.Options.AuditPlugin.Remove).   | 
| `SERVER_AUDIT_QUERY_LOG_LIMIT` | 0–2147483647 | 1024 |  Límite de la longitud de la cadena de consulta en un registro.   | 

### Adición del complemento de auditoría de MariaDB
<a name="Appendix.MariaDB.Options.AuditPlugin.Add"></a>

El proceso general para añadir el complemento de auditoría de MariaDB a una instancia de base de datos es el siguiente: 

1. Cree un grupo de opciones nuevo o copie o modifique un grupo de opciones existente.

1. Añada la opción al grupo de opciones.

1. Asocie el grupo de opciones a la instancia de base de datos.

Después de añadir el complemento de auditoría de MariaDB, no es necesario reiniciar la instancia de base de datos. En cuanto esté activo el grupo de opciones, comenzará la auditoría. 

**Para añadir el complemento de auditoría de MariaDB**

1. Determine el grupo de opciones que desea utilizar. Puede crear un grupo de opciones o utilizar uno existente. Si desea utilizar un grupo de opciones existente, vaya al siguiente paso. De lo contrario, cree un grupo de opciones de base de datos personalizado. Elija **mariadb** en **Engine (Motor)** y **10.3** o posteriores en **Major engine version** (Versión principal del motor). Para obtener más información, consulte [Creación de un grupo de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Añada la opción **MARIADB\$1AUDIT\$1PLUGIN** al grupo de opciones y configure los ajustes de las opciones. Para obtener más información acerca de la adición de opciones, consulte [Agregar una opción a un grupo de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). Para obtener más información acerca de cada opción, consulte [Configuración de opciones del complemento de auditoría](#Appendix.MariaDB.Options.AuditPlugin.Options). 

1. Aplique el grupo de opciones a una instancia de base de datos nueva o existente. 
   + Si se trata de una instancia de base de datos nueva, el grupo de opciones se aplica cuando se lanza la instancia. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md). 
   + Para una instancia de base de datos existente, el grupo de opciones se aplica modificando la instancia de base de datos y asociando el grupo de opciones nuevo. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 

### Visualización y descarga del registro del complemento de auditoría de MariaDB
<a name="Appendix.MariaDB.Options.AuditPlugin.Log"></a>

Después de habilitar un complemento de auditoría de MariaDB, podrá obtener acceso a los resultados de los archivos de registro de la misma forma que a los de los demás archivos de registro basados en texto. Los archivos del registro de auditoría se encuentran en `/rdsdbdata/log/audit/`. Para obtener información acerca de la visualización del archivo de registro en la consola, consulte [Visualización y descripción de archivos de registro de base de datos](USER_LogAccess.Procedural.Viewing.md). Para obtener información acerca de la descarga del archivo de registro, consulte [Descarga de un archivo de registro de base de datos](USER_LogAccess.Procedural.Downloading.md). 

### Modificación de la configuración del complemento de auditoría de MariaDB
<a name="Appendix.MariaDB.Options.AuditPlugin.ModifySettings"></a>

Después de habilitar el complemento de auditoría de MariaDB, puede modificar la configuración del complemento. Para obtener más información acerca de cómo modificar la configuración de las opciones, consulte [Modificación de una configuración de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption). Para obtener más información acerca de cada opción, consulte [Configuración de opciones del complemento de auditoría](#Appendix.MariaDB.Options.AuditPlugin.Options). 

### Eliminación del complemento de auditoría de MariaDB
<a name="Appendix.MariaDB.Options.AuditPlugin.Remove"></a>

Amazon RDS no permite desactivar el registro del complemento de auditoría de MariaDB. Sin embargo, puede eliminar el complemento de una instancia de base de datos. Cuando elimina el complemento de auditoría de MariaDB, la instancia de base de datos se reinicia automáticamente para detener la auditoría. 

Para eliminar el complemento de auditoría de MariaDB de una instancia de base de datos, realice una de las siguientes operaciones: 
+ Elimine la opción del complemento de auditoría de MariaDB del grupo de opciones al que pertenece. Este cambio afecta a todas las instancias de base de datos que utilizan el grupo de opciones. Para obtener más información, consulte [Quitar una opción de un grupo de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption) 
+ Modifique la instancia de base de datos y especifique otro grupo de opciones que no incluya el complemento. Este cambio afecta a una única instancia de base de datos. Puede especificar el grupo de opciones predeterminado (vacío) u otro grupo de opciones personalizado. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 

# Parámetros de MariaDB
<a name="Appendix.MariaDB.Parameters"></a>

De manera predeterminada, una instancia de base de datos de MariaDB usa un grupo de parámetros de base de datos específico de una base de datos de MariaDB. Este grupo de parámetros contiene algunos de los parámetros (no todos) incluidos en los grupos de parámetros de base de datos de Amazon RDS para el motor de base de datos de MySQL. También contiene varios nuevos parámetros específicos de MariaDB. Para obtener información sobre cómo trabajar con grupos de parámetros y establecer parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

## Visualización de los parámetros de MariaDB
<a name="Appendix.MariaDB.Parameters.Viewing"></a>

Los parámetros de RDS for MariaDB se establecen en los valores predeterminados del motor de almacenamiento seleccionado. Para obtener más información sobre los parámetros de MariaDB, consulte la [documentación de MariaDB](http://mariadb.com/kb/en/mariadb/documentation/). Para obtener más información sobre los motores de almacenamiento de MariaDB, consulte [Motores de almacenamiento de MariaDB admitidos en Amazon RDS](MariaDB.Concepts.Storage.md).

Puede ver los parámetros disponibles para una versión específica de RDS for MariaDB mediante la consola de RDS o AWS CLI. Para obtener información sobre cómo ver los parámetros en un grupo de parámetros de MariaDB en la consola de RDS, consulte [Visualización de los valores de parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Viewing.md).

Con la AWS CLI, puede ver los parámetros de una versión de RDS for MariaDB a través del comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html). Especifique uno de los siguientes valores para la opción `--db-parameter-group-family`: 
+ `mariadb11.8`
+ `mariadb11.4`
+ `mariadb10.11`
+ `mariadb10.6`
+ `mariadb10.5`
+ `mariadb10.4`
+ `mariadb10.3`

Por ejemplo, para ver los parámetros de la versión 10.6 de RDS for MySQL, ejecute el siguiente comando.

```
aws rds describe-engine-default-parameters --db-parameter-group-family mariadb10.6
```

El resultado tiene un aspecto similar al siguiente.

```
{
    "EngineDefaults": {
        "Parameters": [
            {
                "ParameterName": "alter_algorithm",
                "Description": "Specify the alter table algorithm.",
                "Source": "engine-default",
                "ApplyType": "dynamic",
                "DataType": "string",
                "AllowedValues": "DEFAULT,COPY,INPLACE,NOCOPY,INSTANT",
                "IsModifiable": true
            },
            {
                "ParameterName": "analyze_sample_percentage",
                "Description": "Percentage of rows from the table ANALYZE TABLE will sample to collect table statistics.",
                "Source": "engine-default",
                "ApplyType": "dynamic",
                "DataType": "float",
                "AllowedValues": "0-100",
                "IsModifiable": true
            },
            {
                "ParameterName": "aria_block_size",
                "Description": "Block size to be used for Aria index pages.",
                "Source": "engine-default",
                "ApplyType": "static",
                "DataType": "integer",
                "AllowedValues": "1024-32768",
                "IsModifiable": false
            },
            {
                "ParameterName": "aria_checkpoint_interval",
                "Description": "Interval in seconds between automatic checkpoints.",
                "Source": "engine-default",
                "ApplyType": "dynamic",
                "DataType": "integer",
                "AllowedValues": "0-4294967295",
                "IsModifiable": true
            },
        ...
```

Para enumerar solo los parámetros modificables de la versión 10.6 de RDS for MariaDB, ejecute el siguiente comando.

Para Linux, macOS o Unix:

```
aws rds describe-engine-default-parameters --db-parameter-group-family mariadb10.6 \
   --query 'EngineDefaults.Parameters[?IsModifiable==`true`]'
```

Para Windows:

```
aws rds describe-engine-default-parameters --db-parameter-group-family mariadb10.6 ^
   --query "EngineDefaults.Parameters[?IsModifiable==`true`]"
```

## Parámetros de MySQL que no están disponibles
<a name="Appendix.MariaDB.Parameters.MySQLNotAvailable"></a>

Los siguientes parámetros de MySQL no están disponibles en los grupos de parámetros de base de datos específicos de MariaDB:
+ bind\$1address
+ binlog\$1error\$1action
+ binlog\$1gtid\$1simple\$1recovery
+ binlog\$1max\$1flush\$1queue\$1time
+ binlog\$1order\$1commits
+ binlog\$1row\$1image
+ binlog\$1rows\$1query\$1log\$1events
+ binlogging\$1impossible\$1mode
+ block\$1encryption\$1mode
+ core\$1file
+ default\$1tmp\$1storage\$1engine
+ div\$1precision\$1increment
+ end\$1markers\$1in\$1json
+ enforce\$1gtid\$1consistency
+ eq\$1range\$1index\$1dive\$1limit
+ explicit\$1defaults\$1for\$1timestamp
+ gtid\$1executed
+ gtid-mode
+ gtid\$1next
+ gtid\$1owned
+ gtid\$1purged
+ log\$1bin\$1basename
+ log\$1bin\$1index
+ log\$1bin\$1use\$1v1\$1row\$1events
+ log\$1slow\$1admin\$1statements
+ log\$1slow\$1slave\$1statements
+ log\$1throttle\$1queries\$1not\$1using\$1indexes
+ master-info-repository
+ optimizer\$1trace
+ optimizer\$1trace\$1features
+ optimizer\$1trace\$1limit
+ optimizer\$1trace\$1max\$1mem\$1size
+ optimizer\$1trace\$1offset
+ relay\$1log\$1info\$1repository
+ rpl\$1stop\$1slave\$1timeout
+ slave\$1parallel\$1workers
+ slave\$1pending\$1jobs\$1size\$1max
+ slave\$1rows\$1search\$1algorithms
+ storage\$1engine
+ table\$1open\$1cache\$1instances
+ timed\$1mutexes
+ transaction\$1allow\$1batching
+ validate-password
+ validate\$1password\$1dictionary\$1file
+ validate\$1password\$1length
+ validate\$1password\$1mixed\$1case\$1count
+ validate\$1password\$1number\$1count
+ validate\$1password\$1policy
+ validate\$1password\$1special\$1char\$1count

Para obtener más información sobre los parámetros de MySQL, visite la [documentación de MySQL](https://dev.mysql.com/doc/refman/8.0/en/).

# Migración de datos desde una instantánea de base de datos de MySQL a una instancia de base de datos MariaDB
<a name="USER_Migrate_MariaDB"></a>

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 Consola de administración de AWS, 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](USER_CreateSnapshot.md).

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](https://mariadb.com/kb/en/system-variable-differences-between-mariadb-and-mysql/) (Diferencias de la variable de sistema entre MariaDB y MySQL). Para obtener información acerca de los grupos de parámetros de base de datos, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md). Para obtener información acerca de los grupos de opciones, consulte [Trabajo con grupos de opciones](USER_WorkingWithOptionGroups.md). 

## Realización de la migración
<a name="USER_Migrate_MariaDB.Migrating"></a>

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 Consola de administración de AWS, la AWS CLI o la API de RDS.

### Consola
<a name="USER_Migrate_MariaDB.CON"></a>

**Para migrar una instantánea de base de datos de MySQL a una instancia de base de datos MariaDB**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. 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. 

1. En **Actions** (Acciones), elija **Migrate Snapshot** (Migrar instantánea). Aparece la página **Migrate Database** (Migrar base de datos).

1. 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.  
![\[La página Migrar base de datos para migrar de MySQL a MariaDB en la consola de Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/MigrateMariaDB.png)

1. 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](USER_CreateDBInstance.Settings.md). 

1. Elija **Migrate (Migrar)**.

### AWS CLI
<a name="USER_Migrate_MariaDB.CLI"></a>

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 [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html) 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.

**Example**  
Para Linux, macOS o Unix:  

```
1. aws rds restore-db-instance-from-db-snapshot \
2.     --db-instance-identifier newmariadbinstance \
3.     --db-snapshot-identifier mysqlsnapshot \
4.     --engine mariadb
```
Para Windows:  

```
1. aws rds restore-db-instance-from-db-snapshot ^
2.     --db-instance-identifier newmariadbinstance ^
3.     --db-snapshot-identifier mysqlsnapshot ^
4.     --engine mariadb
```

### API
<a name="USER_Migrate_MariaDB.API"></a>

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 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html) de la API de Amazon RDS.

## Incompatibilidades entre MariaDB y MySQL
<a name="USER_Migrate_MariaDB.Incompatibilities"></a>

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 Consola de administración de AWS, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) de la AWS CLI o la operación [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 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](Overview.DBInstance.Modifying.md). 
+ 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\$1memcache, consulte [InnoDB memcached Plugin Internals](https://dev.mysql.com/doc/refman/8.0/en/innodb-memcached-internals.html).

# Referencia de MariaDB en Amazon RDS SQL
<a name="Appendix.MariaDB.SQLRef"></a>

A continuación, puede encontrar las descripciones de los procedimientos almacenados del sistema que están disponibles para las instancias de Amazon RDS que ejecutan el motor de base de datos MariaDB.

Puede utilizar los procedimientos almacenados del sistema que están disponibles para instancias de base de datos de MySQL y de MariaDB. Estos procedimientos almacenados están documentados en [Referencia de procedimientos almacenados de RDS para MySQL](Appendix.MySQL.SQLRef.md). Las instancias de base de datos de MariaDB admiten todos los procedimientos almacenados, excepto `mysql.rds_start_replication_until` y `mysql.rds_start_replication_until_gtid`.

Además, los siguientes procedimientos almacenados del sistema solo son compatibles con las instancias de base de datos de Amazon RDS en las que se ejecuta MariaDB:
+ [mysql.rds\$1replica\$1status](mysql_rds_replica_status.md)
+ [mysql.rds\$1set\$1external\$1master\$1gtid](mysql_rds_set_external_master_gtid.md)
+ [mysql.rds\$1kill\$1query\$1id](mysql_rds_kill_query_id.md)
+ [mysql.rds\$1execute\$1operation](mysql_rds_execute_operation.md)

# mysql.rds\$1replica\$1status
<a name="mysql_rds_replica_status"></a>

Muestra el estado de replicación de una réplica de lectura de MariaDB.

Llama a este procedimiento en la réplica de lectura para mostrar información de estado sobre los parámetros esenciales de los subprocesos de replicación.

## Sintaxis
<a name="mysql_rds_replica_status-syntax"></a>

```
CALL mysql.rds_replica_status;
```

## Notas de uso
<a name="mysql_rds_replica_status-usage-notes"></a>

Este procedimiento solo es compatible con instancias de base de datos de MariaDB que se ejecuten con las versiones 10.5 y superiores de MariaDB.

Este procedimiento es el equivalente del comando `SHOW REPLICA STATUS`. Este comando no es compatible con las versiones 10.5 y superiores de las instancias de base de datos de MariaDB.

En las versiones anteriores de MariaDB, el comando `SHOW SLAVE STATUS` equivalente requería el privilegio `REPLICATION SLAVE`. En la versión 10.5 y versiones posteriores de MariaDB, se requiere el privilegio `REPLICATION REPLICA ADMIN`. Para proteger la administración de RDS de instancias de base de datos de la versión 10.5 de MariaDB y versiones posteriores, este nuevo privilegio no se otorga al usuario maestro de RDS.

## Ejemplos
<a name="mysql_rds_replica_status-examples"></a>

En el siguiente ejemplo se muestra el estado de una réplica de lectura de MariaDB:

```
call mysql.rds_replica_status;
```

La respuesta será similar a la siguiente:

```
*************************** 1. row ***************************
                Replica_IO_State: Waiting for master to send event
                     Source_Host: XX.XX.XX.XXX
                     Source_User: rdsrepladmin
                     Source_Port: 3306
                   Connect_Retry: 60
                 Source_Log_File: mysql-bin-changelog.003988
             Read_Source_Log_Pos: 405
                  Relay_Log_File: relaylog.011024
                   Relay_Log_Pos: 657
           Relay_Source_Log_File: mysql-bin-changelog.003988
              Replica_IO_Running: Yes
             Replica_SQL_Running: Yes
                 Replicate_Do_DB:
             Replicate_Ignore_DB:
              Replicate_Do_Table:
          Replicate_Ignore_Table: mysql.rds_sysinfo,mysql.rds_history,mysql.rds_replication_status
         Replicate_Wild_Do_Table:
     Replicate_Wild_Ignore_Table:
                      Last_Errno: 0
                      Last_Error:
                    Skip_Counter: 0
             Exec_Source_Log_Pos: 405
                 Relay_Log_Space: 1016
                 Until_Condition: None
                  Until_Log_File:
                   Until_Log_Pos: 0
              Source_SSL_Allowed: No
              Source_SSL_CA_File:
              Source_SSL_CA_Path:
                 Source_SSL_Cert:
               Source_SSL_Cipher:
                  Source_SSL_Key:
           Seconds_Behind_Master: 0
   Source_SSL_Verify_Server_Cert: No
                   Last_IO_Errno: 0
                   Last_IO_Error:
                  Last_SQL_Errno: 0
                  Last_SQL_Error:
     Replicate_Ignore_Server_Ids:
                Source_Server_Id: 807509301
                  Source_SSL_Crl:
              Source_SSL_Crlpath:
                      Using_Gtid: Slave_Pos
                     Gtid_IO_Pos: 0-807509301-3980
         Replicate_Do_Domain_Ids:
     Replicate_Ignore_Domain_Ids:
                   Parallel_Mode: optimistic
                       SQL_Delay: 0
             SQL_Remaining_Delay: NULL
       Replica_SQL_Running_State: Reading event from the relay log
              Replica_DDL_Groups: 15
Replica_Non_Transactional_Groups: 0
    Replica_Transactional_Groups: 3658
1 row in set (0.000 sec)

Query OK, 0 rows affected (0.000 sec)
```

# mysql.rds\$1set\$1external\$1master\$1gtid
<a name="mysql_rds_set_external_master_gtid"></a>

Configura la reproducción basada en GTID desde una instancia de MariaDB que se ejecuta fuera de Amazon RDS a una instancia de base de datos de MariaDB. Este procedimiento almacenado solo se admite cuando la instancia de MariaDB externa tiene la versión 10.0.24 o posterior. Cuando configure una replicación en la que una o las dos instancias no admitan los identificadores de transacciones globales (GTID) de MariaDB, use [mysql.rds\$1set\$1external\$1master (RDS para MariaDB y RDS para las versiones principales de MySQL 8.0 e inferiores)](mysql-stored-proc-replicating.md#mysql_rds_set_external_master).

El uso de GTID para la replicación proporciona características de seguridad en caso de bloqueo que no ofrece la replicación con registros binarios, así que es el procedimiento recomendado cuando las instancias que se van a replicar lo admiten. 

## Sintaxis
<a name="mysql_rds_set_external_master_gtid-syntax"></a>

 

```
CALL mysql.rds_set_external_master_gtid(
  host_name
  , host_port
  , replication_user_name
  , replication_user_password
  , gtid
  , ssl_encryption
);
```

## Parámetros
<a name="mysql_rds_set_external_master_gtid-parameters"></a>

 *host\$1name*   
Cadena. El nombre de host o dirección IP de la instancia de MariaDB ejecutada fuera de Amazon RDS que se convertirá en instancia de origen.

 *host\$1port*   
Entero. El puerto usado por la instancia de MariaDB ejecutada fuera de Amazon RDS que se configurará como instancia de origen. Si la configuración de la red incluye la replicación del puerto SSH que convierte el número de puerto, especifique el número de puerto expuesto por SSH.

 *replication\$1user\$1name*   
Cadena. ID de un usuario con permisos `REPLICATION SLAVE` en la instancia de base de datos de MariaDB que se va a configurar como réplica de lectura.

 *replication\$1user\$1password*   
Cadena. La contraseña del ID de usuario especificado en `replication_user_name`.

 *gtid*   
Cadena. El ID de transacción global de la instancia de origen desde el que debe comenzar la replicación.  
Puede usar `@@gtid_current_pos` para obtener el GTID actual si la instancia de origen se ha bloqueado mientras se configura la replicación con el fin de que el registro binario no cambie entre los puntos en los que se obtiene el GTID y comienza la replicación.  
De lo contrario, si usa `mysqldump` versión 10.0.13 o posterior para rellenar la instancia de réplica antes de comenzar la replicación, puede obtener la posición de GTID en la salida usando las opciones `--master-data` o `--dump-slave`. Si no usa `mysqldump` 10.0.13 o posterior, puede ejecutar `SHOW MASTER STATUS` o usar las mismas opciones de `mysqldump` para obtener el nombre y la posición del archivo de registro binario y convertirlos a continuación en un GTID ejecutando `BINLOG_GTID_POS` en la instancia de MariaDB externa:  

```
SELECT BINLOG_GTID_POS('<binary log file name>', <binary log file position>);
```
Para obtener más información acerca de la implementación de los GTID en MariaDB, vaya a [Global Transaction ID](http://mariadb.com/kb/en/mariadb/global-transaction-id/) en la documentación de MariaDB.

 *ssl\$1encryption*   
Valor que especifica si el cifrado de la capa de conexión segura (SSL) se usa en la conexión de reproducción. El 1 especifica que se usa el cifrado SSL; el 0 especifica que no se usa el cifrado. El valor predeterminado es 0.  
La opción `MASTER_SSL_VERIFY_SERVER_CERT` no es compatible. Esta opción se establece en 0, lo que significa que la conexión está cifrada, pero los certificados no se verifican.

## Notas de uso
<a name="mysql_rds_set_external_master_gtid-usage-notes"></a>

El usuario maestro debe ejecutar el procedimiento `mysql.rds_set_external_master_gtid`. Se debe ejecutar en la instancia de base de datos de MariaDB que se está configurando como réplica de una instancia de MariaDB que se ejecuta fuera de Amazon RDS. Antes de ejecutar `mysql.rds_set_external_master_gtid`, debe haber configurado la instancia de MariaDB que se ejecuta fuera de Amazon RDS como instancia de origen. Para obtener más información, consulte [Importación de datos en una instancia de base de datos de Amazon RDS para MariaDB](MariaDB.Procedural.Importing.md).

**aviso**  
No use `mysql.rds_set_external_master_gtid` para administrar la replicación entre dos instancias de base de datos de Amazon RDS. Úselo solo cuando replique con una instancia de MariaDB que se ejecute fuera de RDS. Para obtener información sobre la administración de la replicación entre instancias de base de datos de Amazon RDS, consulte [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md).

Después de llamar a `mysql.rds_set_external_master_gtid` para configurar una instancia de base de datos de Amazon RDS como réplica de lectura, puede llamar a [mysql.rds\$1start\$1replication](mysql-stored-proc-replicating.md#mysql_rds_start_replication) en la réplica para iniciar el proceso de replicación. Puede llamar a [mysql.rds\$1reset\$1external\$1master (RDS para MariaDB y RDS para las versiones principales de MySQL 8.0 e inferiores)](mysql-stored-proc-replicating.md#mysql_rds_reset_external_master) para eliminar la configuración de la réplica de lectura.

Cuando se llama a `mysql.rds_set_external_master_gtid`, Amazon RDS registra la hora, el usuario y una acción "set master" en las tablas `mysql.rds_history` y `mysql.rds_replication_status`.

## Ejemplos
<a name="mysql_rds_set_external_master_gtid-examples"></a>

Cuando se ejecuta en una instancia de base de datos de MariaDB, el siguiente ejemplo la configura como réplica de una instancia de MariaDB que se ejecuta fuera de Amazon RDS.

```
call mysql.rds_set_external_master_gtid ('Sourcedb.some.com',3306,'ReplicationUser','SomePassW0rd','0-123-456',0); 
```

# mysql.rds\$1kill\$1query\$1id
<a name="mysql_rds_kill_query_id"></a>

Finaliza una consulta que se ejecuta en el servidor de MariaDB para finalizar consultas de larga duración o problemáticas. Puede identificar el ID de la consulta y detener de forma eficaz una consulta específica para abordar los problemas de rendimiento y mantener un funcionamiento óptimo de la base de datos.

## Sintaxis
<a name="mysql_rds_kill_query_id-syntax"></a>

```
CALL mysql.rds_kill_query_id(queryID);
```

## Parámetros
<a name="mysql_rds_kill_query_id-parameters"></a>

 *queryID*   
Entero. La identidad de la consulta que se va a finalizar.

## Notas de uso
<a name="mysql_rds_kill_query_id-usage-notes"></a>

Para detener una consulta que se ejecute en el servidor de MariaDB, use el procedimiento `mysql.rds_kill_query_id` y transfiera el ID de esa consulta. Para obtener el ID de la consulta, consulte la [Information Schema PROCESSLIST Table](http://mariadb.com/kb/en/mariadb/information-schema-processlist-table/) de MariaDB, como se muestra a continuación:

```
SELECT USER, HOST, COMMAND, TIME, STATE, INFO, QUERY_ID FROM 
                INFORMATION_SCHEMA.PROCESSLIST WHERE USER = '<user name>';
```

La conexión al servidor de MariaDB se conserva.

## Ejemplos
<a name="mysql_rds_kill_query_id-examples"></a>

El siguiente ejemplo finaliza una consulta con el ID de consulta 230040:

```
call mysql.rds_kill_query_id(230040); 
```

# mysql.rds\$1execute\$1operation
<a name="mysql_rds_execute_operation"></a>

Ejecuta operaciones de InnoDB para administrar los estados de los grupos de búferes y el espacio de tablas temporal. Este procedimiento se puede utilizar para controlar dinámicamente las operaciones de InnoDB, como volcar y cargar los estados de los grupos de búferes o truncar un espacio de tabla temporal.

## Sintaxis
<a name="mysql_rds_execute_operation-syntax"></a>

```
CALL mysql.rds_execute_operation(operation);
```

## Parámetros
<a name="mysql_rds_execute_operation-parameters"></a>

 *Operación de*   
Cadena. Las operaciones de InnoDB a ejecutar. Los valores válidos son:  
+ *innodb\$1buffer\$1pool\$1dump\$1now*: operación que vuelca el estado actual del conjunto de búferes.
+ *innodb\$1buffer\$1pool\$1load\$1now*: operación que carga el estado del conjunto de búferes guardado.
+ *innodb\$1buffer\$1pool\$1load\$1abort*: operación que anula una operación de carga de un grupo de búferes.
+ *innodb\$1truncate\$1temporary\$1tablespace\$1now*: operación que trunca el espacio de tabla temporal.

## Notas de uso
<a name="mysql_rds_execute_operation-usage-notes"></a>

Este procedimiento solo es compatible con instancias de base de datos de MariaDB que se ejecuten con las versiones 11.8 y superiores de MariaDB.

Durante la ejecución, el registro binario se desactiva temporalmente para impedir la replicación de estos comandos administrativos.

El procedimiento mantiene un registro de auditoría al registrar todas las operaciones en la tabla de [https://mariadb.com/docs/server/security/securing-mariadb/securing-mariadb-encryption/data-in-transit-encryption/securing-connections-for-client-and-server#requiring-tls](https://mariadb.com/docs/server/security/securing-mariadb/securing-mariadb-encryption/data-in-transit-encryption/securing-connections-for-client-and-server#requiring-tls).

## Ejemplos
<a name="mysql_rds_execute_operation-examples"></a>

El siguiente ejemplo muestra la reducción de un espacio de tablas temporal mediante `mysql.rds_execute_operation`:

Para comprobar el tamaño actual del espacio de tabla temporal, ejecute la siguiente consulta:

```
      
SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary';
+------------+
| FILE_SIZE  |
+------------+
| 6723469312 |  -- 6.3 GB
+------------+
```

Al eliminar tablas temporales, no se reduce el uso de almacenamiento en el espacio de tablas global. Para reducir el tamaño del espacio de tablas global, ejecute el comando `mysql.rds_execute_operation` para reducir el espacio de tabla temporal.

```
 
CALL mysql.rds_execute_operation('innodb_truncate_temporary_tablespace_now');
Query OK, 2 rows affected (0.004 sec)
```

Tras ejecutar el procedimiento, compruebe que se ha reclamado el espacio.

```
SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary';
+-----------+
| FILE_SIZE |
+-----------+
|  12582912 |  -- 12 MB
+-----------+
```

**nota**  
 La operación de reducción puede tardar un poco, en función del tamaño del espacio de tablas temporal y de la carga de trabajo actual.

**importante**  
El espacio de tablas temporal se reduce solo cuando todas las tablas temporales que contribuyeron a su tamaño ya no se utilizan. Se recomienda ejecutar este procedimiento cuando no haya espacios de tabla temporales activos en la instancia. 

# Zona horaria local para instancias de base de datos de MariaDB
<a name="MariaDB.Concepts.LocalTimeZone"></a>

De manera predeterminada, la zona horaria para una instancia de base de datos de MariaDB es el horario universal coordinado (UTC). En su lugar, puede definir la zona horaria de su instancia de base de datos en la zona horaria local de su aplicación.

Para definir la zona horaria local para una instancia de base de datos, configure el parámetro `time_zone` del grupo de parámetros de la instancia de base de datos en uno de los valores admitidos que se indican más adelante en esta sección. Al configurar el parámetro `time_zone` de un grupo de parámetros, todas las instancias de base de datos y réplicas de lectura que utilizan ese grupo de parámetros cambian para utilizar la nueva zona horaria local. Para obtener información acerca de cómo configurar los parámetros de un grupo de parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Después de definir la zona horaria local, todas las conexiones nuevas con la base de datos reflejarán el cambio. Si tiene alguna conexión con la base de datos abierta al cambiar la zona horaria local, no verá la actualización de la zona horaria local hasta que cierre la conexión y abra una nueva conexión.

Puede definir una zona horaria local diferente para una instancia de base de datos y una o varias de sus réplicas de lectura. Para ello, utilice un grupo de parámetros diferente para la instancia de base de datos y para la réplica o las réplicas y establezca el parámetro `time_zone` de cada grupo de parámetros en una zona horaria local distinta.

Si se replica en las Regiones de AWS, la instancia de base de datos de origen y la réplica de lectura utilizan diferentes grupos de parámetros (los grupos de parámetros son exclusivos de una Región de AWS). Para usar la misma zona horaria local para cada instancia, debe configurar el parámetro `time_zone` en los grupos de parámetros de la instancia y de la réplica de lectura.

Cuando se restaura una instancia de base de datos desde una instantánea de base de datos, la zona horaria local se define como UTC. Podrá actualizar la zona horaria a su zona horaria local una vez que se haya completado la restauración. Si restaura una instancia de base de datos a un momento dado, la zona horaria local de la instancia de base de datos restaurada será el ajuste de zona horaria del grupo de parámetros de la instancia de base de datos restaurada.

Internet Assigned Numbers Authority (Autoridad de Números Asignados en Internet, IANA por sus siglas en inglés) publica nuevas zonas horarias en [https://www.iana.org/time-zones](https://www.iana.org/time-zones) varias veces al año. Cada vez que RDS publica una nueva versión secundaria de mantenimiento de MariaDB, incluye los datos de zona horaria más recientes en el momento de la publicación. Cuando utiliza las versiones más recientes de RDS para MariaDB, dispone de datos de zona horaria recientes de RDS. Para garantizar que la instancia de base de datos tenga datos de zona horaria recientes, se recomienda actualizar a una versión posterior del motor de base de datos. Como alternativa, puede modificar las tablas de zonas horarias en las instancias de base de datos de MariaDB manualmente. Para ello, puede utilizar comandos SQL o ejecutar la [herramienta mysql\$1tzinfo\$1to\$1sql](https://mariadb.com/kb/en/mysql_tzinfo_to_sql/) en un cliente SQL. Tras actualizar los datos de la zona horaria de forma manual, reinicie la instancia de base de datos para que los cambios se apliquen. RDS no modifica ni restablece los datos de zona horaria de las instancias de base de datos en ejecución. Los nuevos datos de zona horaria solo se instalan cuando se actualiza la versión del motor de base de datos.

Puede definir su zona horaria local en uno de los valores siguientes.


| Zona | Time zone (Zona horarioa) | 
| --- | --- | 
|  África  |  África/El Cairo, África/Casablanca, África/Harare, África/Monrovia, África/Nairobi, África/Trípoli, África/Windhoek  | 
|  América  |  América/Araguaína, América/Asunción, América/Bogotá, América/Buenos\$1Aires, América/Caracas, América/Chihuahua, América/Cuiabá, América/Denver, América/Fortaleza, América/Guatemala, América/Halifax, América/Manaos, América/Matamoros, América/Monterrey, América/Montevideo, América/Phoenix, América/Santiago, América/Tijuana  | 
|  Asia  |  Asia/Amán, Asia/Asjabad, Asia/Bagdad, Asia/Bakú, Asia/Bangkok, Asia/Beirut, Asia/Calcuta, Asia/Daca, Asia/Damasco, Asia/Ereván, Asia/Irkutsk, Asia/Jerusalén, Asia/Kabul, Asia/Karachi, Asia/Katmandú, Asia/Krasnoyarsk, Asia/Magadán, Asia/Mascate, Asia/Novosibirsk, Asia/Riad, Asia/Seúl, Asia/Shanghái, Asia/Singapur, Asia/Taipéi, Asia/Teherán, Asia/Tokio, Asia/Ulán\$1Bator, Asia/Vladivostok, Asia/Yakutsk  | 
|  Atlántico  |  Atlántico/Azores  | 
|  Australia  |  Australia/Adelaida, Australia/Brisbane, Australia/Darwin, Australia/Hobart, Australia/Perth, Australia/Sídney  | 
|  Brasil  |  Brasil/DeNoronha, Brasil/Este  | 
|  Canadá  |  Canadá/Terranova, Canadá/Saskatchewan, Canadá/Yukón  | 
|  Europa  |  Europa/Ámsterdam, Europa/Atenas, Europa/Dublín, Europa/Helsinki, Europa/Estambul, Europa/ Kaliningrado, Europa/Moscú, Europa/París, Europa/Praga, Europa/Sarajevo  | 
|  Pacífico  |  Pacífico/Auckland, Pacífico/Fiyi, Pacífico/Guam, Pacífico/Honolulu, Pacífico/Samoa  | 
|  EE. UU.  |  EE. UU./Alaska, EE. UU./Central, EE. UU./Indiana-Este, EE. UU./Este, EE. UU./Pacífico  | 
|  UTC  |  UTC  | 

# Problemas conocidos y limitaciones de RDS para MariaDB
<a name="CHAP_MariaDB.Limitations"></a>

Los siguientes elementos son problemas conocidos y limitaciones al usar RDS para MariaDB.

**nota**  
Esta lista no es exhaustiva.

**Topics**
+ [Límites de tamaño de archivo de MariaDB en Amazon RDS](#RDS_Limits.FileSize.MariaDB)
+ [Palabra reservada InnoDB](#MariaDB.Concepts.InnodbDatabaseName)
+ [Puertos personalizados](#MariaDB.Concepts.CustomPorts)
+ [Performance Insights](#MariaDB.Concepts.PerformanceInsights)

## Límites de tamaño de archivo de MariaDB en Amazon RDS
<a name="RDS_Limits.FileSize.MariaDB"></a>

Para las instancias de base de datos MariaDB, el tamaño máximo de una tabla es de 16 TB cuando se usan espacios de tablas de archivos por tabla InnoDB. Este límite también restringe el espacio de tabla del sistema a un tamaño máximo de 16 TB. Los espacios de tabla de archivo por tabla de InnoDB (en los que las tablas están cada una en su propio espacio de tabla) se habilitan de forma predeterminada para las instancias de base de datos de MariaDB. Este límite no está relacionado con el límite máximo de almacenamiento para las instancias de base de datos MariaDB. Para más información sobre el límite de almacenamiento, consulte [Almacenamiento de instancias de base de datos de Amazon RDS](CHAP_Storage.md).

El uso de los espacios de tabla file-per-table de InnoDB tiene pros y contras en función de la aplicación. Para determinar el mejor método para su aplicación, consulte [File-Per-Table Tablespaces](https://dev.mysql.com/doc/refman/5.7/en/innodb-file-per-table-tablespaces.html) en la documentación de MySQL.

No es recomendable permitir que las tablas crezcan hasta el tamaño de archivo máximo. En general, es preferible dividir los datos en tablas más pequeñas, que pueden mejorar el desempeño y los tiempos de recuperación.

Una opción que se puede usar para dividir una tabla grande en tablas más pequeñas es la creación de particiones. Las *particiones* distribuyen las porciones de una tabla grande en archivos independientes en función de las reglas que se hayan especificado. Por ejemplo, si almacena las transacciones por fecha, puede crear reglas de partición que distribuyan las transacciones más antiguas entre distintos archivos por medio de la creación de particiones. Después, periódicamente, se pueden archivar los datos de transacciones históricos que no tengan que estar disponibles de forma inmediata para su aplicación. Para obtener información, consulte [Partitioning](https://dev.mysql.com/doc/refman/5.7/en/partitioning.html) en la documentación de MySQL.

**Determinación del tamaño de todos los espacios de tablas de InnoDB**
+ Utilice el comando SQL siguiente para determinar si alguna de las tablas es demasiado grande y por lo tanto es candidata para particiones. 
**nota**  
Para MariaDB 10.6 y versiones posteriores, esta consulta también devuelve el tamaño del espacio de tablas del sistema InnoDB.   
En las versiones de MariaDB anteriores a la 10.6 no es posible determinar el tamaño del espacio de tablas del sistema InnoDB consultando las tablas del sistema. Se recomienda una actualización a una versión posterior de Python.

  ```
  1. SELECT SPACE,NAME,ROUND((ALLOCATED_SIZE/1024/1024/1024), 2) 
  2. as "Tablespace Size (GB)"  
  3. FROM information_schema.INNODB_SYS_TABLESPACES ORDER BY 3 DESC;
  ```

**Determinación del tamaño de las tablas de usuario distintas de InnoDB**
+ Utilice el siguiente comando SQL para determinar si alguna de las tablas distintas de InnoDB es demasiado grande.

  ```
  SELECT TABLE_SCHEMA, TABLE_NAME, round(((DATA_LENGTH + INDEX_LENGTH+DATA_FREE)
  / 1024 / 1024/ 1024), 2) As "Approximate size (GB)" FROM information_schema.TABLES
  WHERE TABLE_SCHEMA NOT IN ('mysql', 'information_schema', 'performance_schema')
  and ENGINE<>'InnoDB';
  ```

**Para habilitar espacios de tabla file-per-table de InnoDB**
+ Establezca el parámetro `innodb_file_per_table` en `1` el grupo de parámetros para la instancia de base de datos.

**Para deshabilitar los espacios de tabla file-per-table de InnoDB**
+ Establezca el parámetro `innodb_file_per_table` en `0` el grupo de parámetros para la instancia de base de datos.

Para obtener más información acerca de la actualización de un grupo de parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Cuando haya habilitado o deshabilitado los espacios de tabla file-per-table de InnoDB, puede ejecutar un comando `ALTER TABLE`. Puede utilizar este comando para mover una tabla desde el espacio de tabla global a su propio espacio de tabla. O bien, puede mover una tabla desde su propio espacio de tabla al espacio de tabla global. A continuación se muestra un ejemplo.

```
1. ALTER TABLE table_name ENGINE=InnoDB, ALGORITHM=COPY; 
```

## Palabra reservada InnoDB
<a name="MariaDB.Concepts.InnodbDatabaseName"></a>

`InnoDB` es una palabra reservada para RDS for MariaDB. No puede utilizar este nombre para una base de datos MariaDB.

## Puertos personalizados
<a name="MariaDB.Concepts.CustomPorts"></a>

Amazon RDS bloquea las conexiones al puerto personalizado 33060 para el motor de MariaDB. Elija un puerto diferente para su motor de MariaDB.

## Performance Insights
<a name="MariaDB.Concepts.PerformanceInsights"></a>

Los contadores de InnoDB no son visibles en Información de rendimiento para RDS para MariaDB 10.11 porque la comunidad de MariaDB ya no los admite. 