

# Archivos de registro de base de datos de MariaDB
<a name="USER_LogAccess.Concepts.MariaDB"></a>

Puede supervisar el registro de errores de MariaDB, el registro de consultas lentas, el registro de errores de autenticación de base de datos de IAM y el registro general. El registro de error de MariaDB se genera de forma predeterminada. Para generar la consulta lenta y los registros generales, establezca parámetros en su grupo de parámetros de base de datos. Amazon RDS rota todos los archivos de registro de MariaDB; los intervalos para cada tipo se indican a continuación. 

Puede monitorear los registros de MariaDB directamente desde la consola de Amazon RDS, la API de Amazon RDS, la CLI de Amazon RDS o los SDK de AWS. También puede obtener acceso a los registros de MariaDB dirigiéndolos a una tabla de la base de datos principal y consultando esa tabla. Puede usar la utilidad mysqlbinlog para descargar un registro binario. 

Para obtener más información acerca de la visualización, descarga y vigilancia de los registros de bases de datos basados en archivos, consulte [Supervisión de archivos de registro de Amazon RDS](USER_LogAccess.md).

**Topics**
+ [Acceso a los registros de errores de MariaDB](USER_LogAccess.MariaDB.Errorlog.md)
+ [Acceso al registro de consultas lentas y al registro general de MariaDB](USER_LogAccess.MariaDB.Generallog.md)
+ [Publicación de registros de MariaDB en Amazon CloudWatch Logs](USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.md)
+ [Rotación y retención de registros para MariaDB](USER_LogAccess.MariaDB.LogFileSize.md)
+ [Administración de registros de MariaDB basados en tablas](Appendix.MariaDB.CommonDBATasks.Logs.md)
+ [Configuración de registros binarios de MariaDB](USER_LogAccess.MariaDB.BinaryFormat.md)
+ [Acceso a los registros binarios de MariaDB](USER_LogAccess.MariaDB.Binarylog.md)
+ [Habilitación de la anotación de registros binarios de MariaDB](USER_LogAccess.MariaDB.BinarylogAnnotation.md)

# Acceso a los registros de errores de MariaDB
<a name="USER_LogAccess.MariaDB.Errorlog"></a>

El registro de errores de MariaDB se escribe en el archivo `<host-name>.err`. Puede ver este archivo mediante la consola de Amazon RDS, También puede recuperar el registro mediante la API de Amazon RDS, la CLI de Amazon RDS o los SDK de AWS. El archivo `<host-name>.err` se vacía cada 5 minutos y su contenido se agrega a `mysql-error-running.log`. El archivo `mysql-error-running.log` rota cada hora, y se conservan los archivos generados cada hora durante las últimas 24 horas. Cada archivo de registro tiene la hora a la que se generó (en UTC) agregada a su nombre. Los archivos de registro también tienen una marca temporal que ayuda a determinar cuándo se escribieron las entradas del registro.

MariaDB solo escribe en el registro de errores durante el inicio, el cierre y cuando encuentra errores. Una instancia de base de datos puede pasar horas o días sin que se escriban nuevas entradas en el registro de errores. Si no hay entradas recientes, se debe a que el servidor no ha encontrado ningún error que haya generado una entrada en el registro.

# Acceso al registro de consultas lentas y al registro general de MariaDB
<a name="USER_LogAccess.MariaDB.Generallog"></a>

Puede escribir el registro de consultas lentas y el registro general de MariaDB en un archivo o en una tabla de la base de datos configurando parámetros en su grupo de parámetros de la base de datos. Para obtener información acerca de cómo crear y modificar un grupo de parámetros de base de datos, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md). Debe definir estos parámetros para poder ver el registro de consultas lentas o el registro general en la consola de Amazon RDS o a través de la API de Amazon RDS, la AWS CLI o los SDK de AWS.

Puede controlar lo que registra MariaDB con los parámetros de esta lista:
+ `slow_query_log` o `log_slow_query`: para crear el registro de consultas lentas, use el valor 1. El valor predeterminado es 0.
+ `general_log`: para crear el registro general, use el valor 1. El valor predeterminado es 0.
+ `long_query_time` o `log_slow_query_time`: para evitar que se registren consultas rápidas en el registro de consultas lentas, especifique el valor del tiempo de ejecución mínimo de una consulta, en segundos, para que se registre. El valor predeterminado es 10 segundos y el mínimo es 0. Si log\$1output = FILE, puede especificar un valor de punto flotante que llega a una resolución de microsegundos. Si log\$1output = TABLE, debe especificar un valor entero con resolución de segundos. Solo se registran las consultas cuyo tiempo de ejecución supere el valor de `long_query_time` o `log_slow_query_time`. Por ejemplo, si configura `long_query_time` o `log_slow_query_time` como 0,1, evitará que se registren las consultas que tarden menos de 100 milisegundos en ejecutarse.
+ `log_queries_not_using_indexes`: para incluir en el registro de consultas lentas todas las consultas que no usen un índice, defina este parámetro como 1. El valor predeterminado es 0. Las consultas que no usen un índice se registran incluso si su tiempo de ejecución es inferior al valor del parámetro `long_query_time`.
+ `log_output option`: puede especificar una de las opciones siguientes para el parámetro `log_output`:
  + **TABLE** (predeterminada): las consultas generales se escriben en la tabla `mysql.general_log` y las consultas lentas en la tabla `mysql.slow_log`. 
  + **FILE**: tanto los registros de las consultas generales como los de las consultas lentas se escriben en el sistema de archivos. Los archivos de registro se rotan cada hora. 
  + **NONE**: deshabilitar registro.

Cuando el registro está habilitado, Amazon RDS rota los registros de las tablas o elimina los archivos de registro a intervalos regulares. Esta medida es una precaución para reducir el riesgo de que un archivo de registro grande bloquee el uso de la base de datos o afecte al rendimiento. El registro con las opciones `FILE` y `TABLE` emplea la rotación y eliminación del modo siguiente:
+ Cuando está activado el registro `FILE`, los archivos de registro se examinan cada hora, y los que tienen una antigüedad superior a 24 horas se eliminan. En algunos casos, el tamaño restante del archivo de registro combinado después de la eliminación puede superar el umbral del 2 por ciento del espacio asignado a una instancia de base de datos. En estos casos, los archivos de registro más grandes se eliminan hasta que el tamaño del archivo de registro no sobrepase el umbral. 
+ Cuando el registro de tipo `TABLE` está habilitado, en algunos casos, las tablas de registro se rotan cada 24 horas. Esta rotación de produce cuando el espacio ocupado por los registros de tabla es superior al 20% del espacio de almacenamiento asignado. También ocurre si el tamaño de todos los registros combinados es superior a 10 GB. Si la cantidad de espacio utilizada para una instancia de base de datos es superior al 90% del espacio de almacenamiento asignado a la instancia de base de datos, se reducen los umbrales de la rotación de registros. Las tablas de registro se rotan si el espacio ocupado por los registros de tabla es superior al 10 % del espacio de almacenamiento asignado. También rotan si el tamaño de todos los registros combinados es superior a 5 GB.

  Cuando se rotan las tablas de registro, la tabla de registro actual se copia en una tabla de registro de copia de seguridad y las entradas de la tabla de registro actual se eliminan. Si la tabla de registro de copia de seguridad ya existe, se elimina antes de copiar la tabla del registro actual en la copia de seguridad. Puede consultar la tabla de registro de copia de seguridad si es necesaria. La tabla de registro de copia de seguridad para la tabla `mysql.general_log` se llama `mysql.general_log_backup`. La tabla de registro de copia de seguridad para la tabla `mysql.slow_log` se llama `mysql.slow_log_backup`.

  Para rotar la tabla `mysql.general_log` puede ejecutar el procedimiento `mysql.rds_rotate_general_log`. Para rotar la tabla `mysql.slow_log` puede ejecutar el procedimiento `mysql.rds_rotate_slow_log`.

  Los registros de tabla se rotan durante una actualización de la versión de la base de datos.

Amazon RDS registra la rotación de registros de `TABLE` y de `FILE` en un evento de Amazon RDS y envía una notificación.

Para trabajar con los registros desde la consola de Amazon RDS, la API de Amazon RDS, la CLI de Amazon RDS o los SDK de AWS, configure el parámetro `log_output` en FILE. Al igual que el registro de errores de MariaDB, estos archivos de registro rotan cada hora. Se conservan los archivos de registro que se generaron durante las 24 horas anteriores.

Para obtener más información acerca de los registros de consultas lentas y general, vaya a los siguientes temas de la documentación de MariaDB:
+ [Registro de consultas lentas](http://mariadb.com/kb/en/mariadb/slow-query-log/)
+ [Registro de consultas generales](http://mariadb.com/kb/en/mariadb/general-query-log/)

# Publicación de registros de MariaDB en Amazon CloudWatch Logs
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs"></a>

Se puede configurar una instancia de base de datos MariaDB para publicar datos de registro en un grupo de registros en Amazon CloudWatch Logs. Con CloudWatch Logs, puede realizar análisis en tiempo real de los datos de registro y utilizar CloudWatch para crear alarmas y ver métricas. Puede utilizar CloudWatch Logs para almacenar los registros de registros en almacenamiento de larga duración. 

Amazon RDS publica cada registro de base de datos de MariaDB como un flujo de base de datos independiente en el grupo de registros. Por ejemplo, supongamos que configura la función de exportación para que incluya el registro de consulta lento. Los datos de las consultas lentas se almacenan en el flujo de registro en el grupo de registro de `/aws/rds/instance/my_instance/slowquery`.

El registro de errores están habilitados de forma predeterminada. La tabla siguiente resume los requisitos para los otros registros de MariaDB.


| Registro | Requisito | 
| --- | --- | 
|  Registro de auditoría  |  La instancia de base de datos debe usar un grupo de opciones personalizado con la opción `MARIADB_AUDIT_PLUGIN`.  | 
|  Registro general  |  La instancia de base de datos debe usar un grupo de parámetros personalizado con la configuración del parámetro `general_log = 1` para habilitar el registro general.  | 
|  Registro de consultas lentas  |  La instancia de base de datos debe usar un grupo de parámetros personalizado con la configuración del parámetro `slow_query_log = 1` o `log_slow_query = 1` para habilitar el registro de consultas lentas.  | 
|  Registro de errores de autenticación de base de datos de IAM  |  Debe habilitar el tipo de registro `iam-db-auth-error` para una instancia de base de datos mediante la creación o modificación de una instancia de base de datos.  | 
|  Resultado de registro  |  La instancia de base de datos debe usar un grupo de parámetros personalizado con la configuración del parámetro `log_output = FILE` para escribir registros en el sistema de archivos y publicarlos en CloudWatch Logs.  | 

## Consola
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.CON"></a>

**Para publicar registros de MariaDB en CloudWatch Logs desde la consola**

1. 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)** y, a continuación, seleccione la instancia de base de datos que desee modificar.

1. Elija **Modify**.

1. En la sección **Logs exports (Exportaciones de registros)**, elija los registros que desea comenzar a publicar en CloudWatch Logs.

1. Elija **Continue**, seguido de **Modify DB Instance** en la página de resumen.

## AWS CLI
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.CLI"></a>

Puede publicar registros de base de datos MariaDB con la AWS CLI. Puede llamar al 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) con los parámetros siguientes: 
+ `--db-instance-identifier`
+ `--cloudwatch-logs-export-configuration`

**nota**  
Los cambios en la opción `--cloudwatch-logs-export-configuration` siempre se aplican a la instancia de base de datos inmediatamente. Por lo tanto, las opciones `--apply-immediately` y `--no-apply-immediately` no tienen ningún efecto.

También puede publicar registros de MariaDB si llama a los siguientes comandos de la AWS CLI: 
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)
+ [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)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-s3.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-s3.html)
+ [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)

Ejecute uno de estos comandos de la AWS CLI con las siguientes opciones: 
+ `--db-instance-identifier`
+ `--enable-cloudwatch-logs-exports`
+ `--db-instance-class`
+ `--engine`

Podrían ser necesarias otras opciones en función del comando de la AWS CLI que ejecute.

**Example**  
En el siguiente ejemplo se modifica una instancia de base de datos MariaDB existente para publicar archivos de registro en CloudWatch Logs. El valor `--cloudwatch-logs-export-configuration` es un objeto JSON. La clave de este objeto es `EnableLogTypes` y su valor es una matriz de cadenas con cualquier combinación de `audit`, `error`, `general` y `slowquery`.  
Para Linux, macOS o Unix:  

```
1. aws rds modify-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'
```
Para Windows:  

```
1. aws rds modify-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'
```

**Example**  
El siguiente comando crea una instancia de base de datos MariaDB y publica archivos de registro en CloudWatch Logs. El valor `--enable-cloudwatch-logs-exports` es una matriz de cadenas JSON. Las cadenas pueden ser cualquier combinación de `audit`, `error`, `general` y `slowquery`.  
Para Linux, macOS o Unix:  

```
1. aws rds create-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' \
4.     --db-instance-class db.m4.large \
5.     --engine mariadb
```
Para Windows:  

```
1. aws rds create-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' ^
4.     --db-instance-class db.m4.large ^
5.     --engine mariadb
```

## API de RDS
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.API"></a>

Puede publicar registros de MariaDB con la API de RDS. Puede realizar una llamada a la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) con los parámetros siguientes: 
+ `DBInstanceIdentifier`
+ `CloudwatchLogsExportConfiguration`

**nota**  
Los cambios en el parámetro `CloudwatchLogsExportConfiguration` siempre se aplican a la instancia de base de datos inmediatamente. Por tanto, el parámetro `ApplyImmediately` no tiene efecto.

También puede publicar registros de MariaDB llamando a las siguientes operaciones de la API de RDS: 
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromS3.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromS3.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html)

Ejecute una de estas operaciones de la API de RDS con los siguientes parámetros: 
+ `DBInstanceIdentifier`
+ `EnableCloudwatchLogsExports`
+ `Engine`
+ `DBInstanceClass`

Podrían ser necesarios otros parámetros en función del comando de la AWS CLI que ejecute.

# Rotación y retención de registros para MariaDB
<a name="USER_LogAccess.MariaDB.LogFileSize"></a>

Cuando el registro está habilitado, Amazon RDS rota los registros de las tablas o elimina los archivos de registro a intervalos regulares. Esta medida es una precaución para reducir el riesgo de que un archivo de registro grande bloquee el uso de la base de datos o afecte al desempeño.

El tamaño de los archivos de registro de consultas lentas, registro de errores y registro general de MariaDB está limitado al 2 por ciento del espacio de almacenamiento asignado a una instancia de base de datos. Para mantener este umbral, los registros se rotan automáticamente cada hora y los que tienen una antigüedad superior a 24 horas se eliminan. Si el tamaño combinado de los archivos de registro sobrepasa el umbral después de eliminar los archivos de registro antiguos, los archivos de registro más grandes se eliminan hasta que el tamaño del archivo de registro deje de sobrepasar el umbral.

Amazon RDS rota los archivos de registro de errores de autenticación de la base de datos de IAM de más de 10 MB. Amazon RDS elimina los archivos de registro de errores de autenticación de la base de datos de IAM que tengan más de cinco días o más de 100 MB.

# Administración de registros de MariaDB basados en tablas
<a name="Appendix.MariaDB.CommonDBATasks.Logs"></a>

Puede dirigir los registros de las consultas lentas a tablas de la instancia de base de datos. Para ello, cree un grupo de parámetros de base de datos y defina el parámetro del servidor `log_output` en `TABLE`. Las consultas generales se registrarán entonces en la tabla `mysql.general_log` y las consultas lentas en la tabla `mysql.slow_log`. Puede consultar las tablas para obtener acceso a la información del registro. Al habilitar este registro, se incrementa la cantidad de datos que se escribe en la base de datos, lo que puede degradar el desempeño.

Tanto el registro general como los registros de consultas lentas están deshabilitados de manera predeterminada. Para habilitar el registro en tablas, también debe establecer los siguientes parámetros del servidor en `1`:
+ `general_log`
+ `slow_query_log` o `log_slow_query`

Las tablas de registro seguirán creciendo hasta que las actividades de registro respectivas se desactiven cambiando el valor del parámetro a `0`. A menudo, se acumula una gran cantidad de datos, lo que puede consumir un porcentaje elevado del espacio de almacenamiento asignado. Amazon RDS no le permite truncar las tablas de registro, pero sí mover su contenido. Al rotar una tabla, su contenido se guarda en una tabla de copia de seguridad y se crea una nueva tabla de registro vacía. Puede aplicar manualmente la rotación de las tablas de registro con los procedimientos de línea de comandos siguientes, en los que el símbolo del sistema se representa por:`PROMPT>` 

```
PROMPT> CALL mysql.rds_rotate_slow_log;
PROMPT> CALL mysql.rds_rotate_general_log;
```

 Para eliminar por completo los datos antiguos y recuperar el espacio del disco, llame al procedimiento correspondiente dos veces consecutivas. 

# Configuración de registros binarios de MariaDB
<a name="USER_LogAccess.MariaDB.BinaryFormat"></a>

El *registro binario* es un conjunto de archivos de registro que contienen información acerca de las modificaciones de datos hechas en una instancia de servidor de MariaDB. El registro binario contiene información como la siguiente:
+ Eventos que describen cambios en la base de datos, como la creación de tablas o las modificaciones de filas.
+ Información sobre la duración de cada instrucción que actualizó los datos.
+ Eventos para instrucciones que podrían haber actualizado datos, pero que no lo hicieron.

El registro binario registra las instrucciones que se envían durante la replicación. También es necesario para algunas operaciones de recuperación. Para obtener más información, consulte [Binary Log](https://mariadb.com/kb/en/binary-log/) en la documentación de MariaDB.

La característica de copias de seguridad automatizadas determina si el registro binario se activa o desactiva para MariaDB. Dispone de las opciones siguientes:

Activar el registro binario.  
Establecer el periodo de retención de copia de seguridad en un valor positivo distinto de cero.

Desactivar el registro binario.  
Establecer el periodo de retención de copia de seguridad en cero.

Para obtener más información, consulte [Habilitar las copias de seguridad automatizadas](USER_WorkingWithAutomatedBackups.Enabling.md).

MariaDB en Amazon RDS admite los formatos de registro binario *basado en filas*, *basado en instrucciones* y *mixto*. El formato de registro binario predeterminado es el *mixto*. Para obtener información detallada acerca de los formatos de registro binarios de MariaDB, consulte [Binary Log Formats](http://mariadb.com/kb/en/mariadb/binary-log-formats/) en la documentación de MariaDB.

Si tiene pensado usar la replicación, el formato de registro binario es importante. Esto es importante porque determina el registro de los cambios de datos que se registra en la fuente y se envía a los objetivos de replicación. Para obtener más información acerca de las ventajas y desventajas de distintos tipos de formatos de registro binarios para la replicación, consulte [Advantages and Disadvantages of Statement-Based and Row-Based Replication](https://dev.mysql.com/doc/refman/5.7/en/replication-sbr-rbr.html) en la documentación de MySQL.

**importante**  
La configuración del formato de registro binario como basado en filas puede generar archivos de registro binario muy grandes. Los archivos de registro binario grandes reducen la cantidad de almacenamiento disponible para una instancia de base de datos. También pueden incrementar la cantidad de tiempo necesaria para llevar a cabo la operación de restauración de una instancia de base de datos.  
La replicación basada en instrucciones puede causar incoherencias entre la instancia de base de datos de origen y la réplica de lectura. Para obtener más información, consulte [Unsafe Statements for Statement-based Replication](https://mariadb.com/kb/en/library/unsafe-statements-for-statement-based-replication/) en la documentación de MariaDB.  
Habilitar el registro binario aumenta el número de operaciones de E/S de escritura en el disco en la instancia de base de datos. Puede supervisar el uso de IOPS con la métrica de CloudWatch `WriteIOPS`.

**Para configurar el formato de registro binario de 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, seleccione **Parameter groups** (Grupos de parámetros).

1. Elija el grupo de parámetros utilizados por la instancia de base de datos que quiera modificar.

   No puede modificar un grupo de parámetros predeterminado. Si la instancia de base de datos emplea un grupo de parámetros predeterminado, cree un nuevo grupo de parámetros y asócielo con la instancia de base de datos.

   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).

1. En **Parameter group actions (Acciones de grupos de parámetros)**, seleccione **Edit (Editar)**.

1. Establezca el parámetro `binlog_format` en el formato de registro binario de su elección (**ROW**, **STATEMENT** o **MIXED**).

   Para desactivar el registro binario establezca el período de retención de copias de seguridad de una instancia de base de datos en cero. Tenga en cuenta que esto deshabilita las copias de seguridad automatizadas diarias. Al deshabilitar las copias de seguridad automatizadas, se desactiva o deshabilita la variable de sesión `log_bin`. Esto deshabilita el registro binario en la instancia de base de datos de RDS para MariaDB, lo que a su vez restablece la variable de sesión `binlog_format` al valor predeterminado de `ROW` en la base de datos. Se recomienda no deshabilitar las copias de seguridad. Para obtener más información acerca de la configuración del **Período de retención de copia de seguridad**, consulte [Configuración de instancias de base de datos](USER_ModifyInstance.Settings.md).

1. Elija **Guardar cambios** para guardar los cambios realizados en el grupo de parámetros de base de datos.

Dado que el parámetro `binlog_format` es dinámico en RDS para MariaDB, no es necesario reiniciar la instancia de base de datos para que se apliquen los cambios. 

**importante**  
El cambio de un grupo de parámetros de base de datos afecta a todas las instancias de base de datos que utilizan ese grupo de parámetros. Si desea especificar diferentes formatos de registro binario para diferentes instancias de base de datos de MariaDB en una región de AWS, las instancias de base de datos deben utilizar diferentes grupos de parámetros de bases de datos. Estos grupos de parámetros identifican diferentes formatos de registro. Asigne el grupo de parámetros de base de datos apropiado a cada instancia de base de datos.

# Acceso a los registros binarios de MariaDB
<a name="USER_LogAccess.MariaDB.Binarylog"></a>

Puede usar la utilidad mysqlbinlog para descargar los registros binarios en formato de texto desde las instancias de base de datos de MariaDB. El registro binario se descarga en su equipo local. Para obtener más información acerca del uso de la utilidad mysqlbinlog, vaya a [Using mysqlbinlog](http://mariadb.com/kb/en/mariadb/using-mysqlbinlog/) en la documentación de MariaDB.

 Para ejecutar la utilidad mysqlbinlog en una instancia de Amazon RDS, use las siguientes opciones: 
+  Especifique la opción `--read-from-remote-server`. 
+  `--host`: especifique el nombre de DNS del punto de conexión de la instancia. 
+  `--port`: especifique el puerto que utiliza la instancia. 
+  `--user`: especifique un usuario de MariaDB al que se haya asignado el permiso de esclavo de replicación. 
+  `--password`: especifique la contraseña del usuario o no indique ninguna para que la utilidad pida una contraseña. 
+  `--result-file`: especifique el archivo local que recibirá la salida. 
+ Especifique los nombres de uno o varios de los archivos de registro binarios. Para obtener una lista de los registros disponibles, use el comando SHOW BINARY LOGS de SQL. 

Para obtener más información acerca de las opciones de mysqlbinlog, vaya a [mysqlbinlog Options](http://mariadb.com/kb/en/mariadb/mysqlbinlog-options/) en la documentación de MariaDB. 

 A continuación se muestra un ejemplo: 

Para Linux, macOS o:Unix

```
mysqlbinlog \
    --read-from-remote-server \
    --host=mariadbinstance1.1234abcd.region.rds.amazonaws.com \
    --port=3306  \
    --user ReplUser \
    --password <password> \
    --result-file=/tmp/binlog.txt
```

En:Windows

```
mysqlbinlog ^
    --read-from-remote-server ^
    --host=mariadbinstance1.1234abcd.region.rds.amazonaws.com ^
    --port=3306  ^
    --user ReplUser ^
    --password <password> ^
    --result-file=/tmp/binlog.txt
```

Normalmente, Amazon RDS limpia un registro binario lo antes posible. Sin embargo, el registro binario debe seguir estando disponible en la instancia para que mysqlbinlog pueda obtener acceso a él. Para especificar el número de horas que RDS retiene los registros binarios, use el procedimiento almacenado `mysql.rds_set_configuration`. Especifique un período con tiempo suficiente para descargar los registros. Una vez que haya definido el periodo de retención, monitorice el uso del almacenamiento para la instancia de base de datos con el fin de asegurarse de que los registros binarios conservados no consuman demasiado almacenamiento.

En el siguiente ejemplo se define el periodo de retención en 1 día.

```
call mysql.rds_set_configuration('binlog retention hours', 24); 
```

Para mostrar el valor actual, utilice el procedimiento almacenado `mysql.rds_show_configuration`.

```
call mysql.rds_show_configuration; 
```

# Habilitación de la anotación de registros binarios de MariaDB
<a name="USER_LogAccess.MariaDB.BinarylogAnnotation"></a>

En una instancia de base de datos de MariaDB, puede usar el evento `Annotate_rows` para incluir en un evento de fila una copia de la consulta de SQL que causó el evento de fila. Este enfoque proporciona una funcionalidad similar a la habilitación del parámetro `binlog_rows_query_log_events` en una instancia de base de datos de RDS para MySQL.

Puede habilitar globalmente las anotaciones de registros binarios creando un grupo de parámetros personalizado y definiendo el parámetro `binlog_annotate_row_events` como **1**. También puede habilitar las anotaciones en el nivel de sesión llamando a `SET SESSION binlog_annotate_row_events = 1`. Use `replicate_annotate_row_events` para reproducir las anotaciones de registros binarios en la instancia réplica si el registro binario está habilitado en ella. No se requieren privilegios especiales para usar estos ajustes.

A continuación se muestra un ejemplo de una transacción basada en filas de MariaDB. El uso del registro basado en filas se dispara definiendo el nivel de aislamiento de transacciones como de lectura confirmada.

```
CREATE DATABASE IF NOT EXISTS test;
USE test;
CREATE TABLE square(x INT PRIMARY KEY, y INT NOT NULL) ENGINE = InnoDB;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
BEGIN
INSERT INTO square(x, y) VALUES(5, 5 * 5);
COMMIT;
```

Sin anotaciones, las entradas de los registros binarios de la transacción tendrán un aspecto similar al siguiente:

```
BEGIN
/*!*/;
# at 1163
# at 1209
#150922  7:55:57 server id 1855786460  end_log_pos 1209         Table_map: `test`.`square` mapped to number 76
#150922  7:55:57 server id 1855786460  end_log_pos 1247         Write_rows: table id 76 flags: STMT_END_F
### INSERT INTO `test`.`square`
### SET
###   @1=5
###   @2=25
# at 1247
#150922  7:56:01 server id 1855786460  end_log_pos 1274         Xid = 62
COMMIT/*!*/;
```

La siguiente instrucción habilita las anotaciones de nivel de sesión para esta misma transacción y las deshabilita después de confirmar la transacción:

```
CREATE DATABASE IF NOT EXISTS test;
USE test;
CREATE TABLE square(x INT PRIMARY KEY, y INT NOT NULL) ENGINE = InnoDB;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
SET SESSION binlog_annotate_row_events = 1;
BEGIN;
INSERT INTO square(x, y) VALUES(5, 5 * 5);
COMMIT;
SET SESSION binlog_annotate_row_events = 0;
```

Con anotaciones, las entradas de los registros binarios de la transacción tendrán un aspecto similar al siguiente:

```
BEGIN
/*!*/;
# at 423
# at 483
# at 529
#150922  8:04:24 server id 1855786460  end_log_pos 483  Annotate_rows:
#Q> INSERT INTO square(x, y) VALUES(5, 5 * 5)
#150922  8:04:24 server id 1855786460  end_log_pos 529  Table_map: `test`.`square` mapped to number 76
#150922  8:04:24 server id 1855786460  end_log_pos 567  Write_rows: table id 76 flags: STMT_END_F
### INSERT INTO `test`.`square`
### SET
###   @1=5
###   @2=25
# at 567
#150922  8:04:26 server id 1855786460  end_log_pos 594  Xid = 88
COMMIT/*!*/;
```