

# Habilitación del reenvío de escritura local
<a name="aurora-mysql-write-forwarding-enabling"></a>

De forma predeterminada, el reenvío de escritura local no está habilitado para los clústeres de bases de datos de Aurora MySQL. El reenvío de escritura local se habilita a nivel de clúster, no a nivel de instancia.

**importante**  
También puede habilitar el reenvío de escritura local para las réplicas de lectura entre regiones que utilizan el registro binario, pero las operaciones de escritura no se reenvían a la Región de AWS de origen. Se reenvían a la instancia de base de datos del escritor del clúster de réplicas de lectura de binlog.  
Utilice este método solo si tiene un caso de uso que requiera escribir en la réplica de lectura de binlog en la Región de AWS secundaria. De no ser así, podría acabar en una situación de “nodos malinformados” en la que los conjuntos de datos replicados no sean coherentes entre sí.   
«Recomendamos utilizar el reenvío de escritura global en las bases de datos globales, en lugar del reenvío de escritura local en las réplicas de lectura entre regiones, a menos que sea absolutamente necesario. Para obtener más información, consulte [Uso del reenvío de escritura en una base de datos Amazon Aurora global](aurora-global-database-write-forwarding.md).

## Consola
<a name="aurora-mysql-write-forwarding-enabling.CON"></a>

Si usa la Consola de administración de AWS, seleccione la casilla de verificación **Activar el reenvío de escritura loca** debajo de **Reenvío de escritura de réplicas de lectura** al crear o modificar un clúster de base de datos.

## AWS CLI
<a name="aurora-mysql-write-forwarding-enabling.CLI"></a>

Para habilitar el reenvío de escritura con la AWS CLI, utilice la opción `--enable-local-write-forwarding`. Esta opción funciona cuando crea un nuevo clúster de basede datos mediante el comando `create-db-cluster`. También funciona cuando modifica un clúster de base de datos existente mediante el comando `modify-db-cluster`. Puede deshabilitar el reenvío de escritura mediante la opción `--no-enable-local-write-forwarding` con estos mismos comandos de la CLI.

En el siguiente ejemplo se crea un clúster de base de datos de Aurora MySQL con el reenvío de escritura habilitado.

```
aws rds create-db-cluster \
  --db-cluster-identifier write-forwarding-test-cluster \
  --enable-local-write-forwarding \
  --engine aurora-mysql \
  --engine-version 8.0.mysql_aurora.3.04.0 \
  --master-username myuser \
  --master-user-password mypassword \
  --backup-retention 1
```

A continuación, crea instancias de base de datos del escritor y lector para poder utilizar el reenvío de escritura. Para obtener más información, consulte [Creación de un clúster de base de datos de Amazon Aurora](Aurora.CreateInstance.md).

## API de RDS
<a name="aurora-mysql-write-forwarding-enabling.API"></a>

Para habilitar el reenvío de escritura mediante la API de Amazon RDS, establezca el parámetro `EnableLocalWriteForwarding` en `true`. Este parámetro funciona cuando crea un nuevo clúster de base de datos mediante la operación `CreateDBCluster`. También funciona cuando modifica un clúster de base de datos existente mediante la operación `ModifyDBCluster`. Puede deshabilitar el reenvío de escritura estableciendo el parámetro `EnableLocalWriteForwarding` en `false`.

## Habilitación del reenvío de escritura para las sesiones de bases de datos
<a name="aurora-mysql-write-forwarding-enabling-session"></a>

El parámetro `aurora_replica_read_consistency` es un parámetro de base de datos y un parámetro de clúster de base de datos que permite el reenvío de escritura. Puede especificar `EVENTUAL`, `SESSION` o `GLOBAL` para el nivel de coherencia de lectura. Para obtener más información sobre los niveles de consistencia, consulte [Coherencia de lectura para el reenvío de escritura](aurora-mysql-write-forwarding-consistency.md). 

Las siguientes reglas se aplican a este parámetro:
+ El valor predeterminado es '' (null).
+ El reenvío de escritura solo está disponible si establece `aurora_replica_read_consistency` en `EVENTUAL`, `SESSION` o `GLOBAL`. Este parámetro solo es pertinente en instancias del lector de clústeres de bases de datos que tengan habilitado el reenvío de escritura.
+ No puede establecer este parámetro (cuando está vacío) o desestablecerlo (cuando ya está configurado) dentro de una transacción de múltiples instrucciones. Puede cambiarlo de un valor válido a otro valor válido durante una transacción de este tipo, pero no recomendamos esta acción.