Administración de clústeres activo-activo - Amazon Relational Database Service

Administración de clústeres activo-activo

Los siguientes procedimientos almacenados configuran y administran los clústeres activo-activo de RDS para MySQL. Para obtener más información, consulte Configuración de clústeres activo-activo para RDS para MySQL.

Estos procedimientos almacenados solo están disponibles con instancias de base de datos de RDS para MySQL que ejecuten las siguientes versiones:

  • Todas las versiones MySQL 8.4

  • MySQL 8.0.35 y versiones secundarias posteriores

mysql.rds_group_replication_advance_gtid

Crea GTID de marcador de posición en la instancia de base de datos actual.

Sintaxis

CALL mysql.rds_group_replication_advance_gtid( begin_id , end_id , server_uuid );

Parámetros

begin_id

El identificador de la transacción inicial que se va a crear.

end_id

El identificador de la transacción final que se va a crear.

begin_id

El group_replication_group_name de la transacción que se va a crear. El group_replication_group_name se especifica como un UUID en el grupo de parámetros de base de datos asociado a la instancia de base de datos.

Notas de uso

En un clúster activo-activo, para que una instancia de base de datos se una a un grupo, todas las transacciones GTID ejecutadas en la nueva instancia de base de datos deben existir en los demás miembros del clúster. En casos poco habituales, es posible que una nueva instancia de base de datos tenga más transacciones si las transacciones se ejecutan antes de unir la instancia al grupo. En este caso, no puede eliminar ninguna transacción existente, pero puede utilizar este procedimiento para crear los GTID de marcador de posición correspondientes en las demás instancias de base de datos del grupo. Antes de hacerlo, compruebe que las transacciones no afectan a los datos replicados.

Al llamar a este procedimiento, las transacciones GTID de server_uuid:begin_id-end_id se crean con contenido vacío. Para evitar problemas de replicación, no utilice este procedimiento en ninguna otra condición.

importante

Evite llamar a este procedimiento cuando el clúster activo-activo funcione normalmente. No llame a este procedimiento a menos que conozca las posibles consecuencias de las transacciones que va a crear. El uso de este procedimiento puede producir datos incoherentes.

Ejemplo

En el siguiente ejemplo, se crean GTID de marcador de posición en la instancia de base de datos actual:

CALL mysql.rds_group_replication_advance_gtid(5, 6, '11111111-2222-3333-4444-555555555555');

mysql.rds_group_replication_create_user

Crea el usuario de replicación rdsgrprepladmin para la replicación de grupo en la instancia de base de datos.

Sintaxis

CALL mysql.rds_group_replication_create_user( replication_user_password );

Parámetros

replication_user_password

La contraseña del usuario de replicación rdsgrprepladmin.

Notas de uso

  • La contraseña del usuario de replicación rdsgrprepladmin debe ser la misma en todas las instancias de base de datos de un clúster activo-activo.

  • El nombre de usuario rdsgrprepladmin está reservado para las conexiones de la replicación de grupo. Ningún otro usuario, incluido el usuario maestro, puede tener este nombre de usuario.

Ejemplo

En el siguiente ejemplo, se crea el usuario de replicación rdsgrprepladmin para la replicación de grupo en la instancia de base de datos:

CALL mysql.rds_group_replication_create_user('password');

mysql.rds_group_replication_set_recovery_channel

Establece el canal group_replication_recovery para un clúster activo-activo. El procedimiento utiliza el usuario reservado rdsgrprepladmin para configurar el canal.

Sintaxis

CALL mysql.rds_group_replication_set_recovery_channel( replication_user_password);

Parámetros

replication_user_password

La contraseña del usuario de replicación rdsgrprepladmin.

Notas de uso

La contraseña del usuario de replicación rdsgrprepladmin debe ser la misma en todas las instancias de base de datos de un clúster activo-activo. Una llamada a mysql.rds_group_replication_create_user especifica la contraseña.

Ejemplo

En el siguiente ejemplo, se establece el canal group_replication_recovery para un clúster activo-activo.

CALL mysql.rds_group_replication_set_recovery_channel('password');

mysql.rds_group_replication_start

Inicia la replicación de grupo en la instancia de base de datos actual.

Sintaxis

CALL mysql.rds_group_replication_start( bootstrap );

Parámetros

bootstrap

Un valor que especifica si se debe inicializar un grupo nuevo o unirse a un grupo existente. 1inicializa un grupo nuevo con la instancia de base de datos actual. 0 une la instancia de base de datos actual a un grupo existente conectándose a los puntos de conexión definidos en el parámetro group_replication_group_seeds del grupo de parámetros de base de datos asociado a la instancia de base de datos.

Ejemplo

En el siguiente ejemplo, se inicializa un grupo nuevo con la instancia de base de datos actual:

CALL mysql.rds_group_replication_start(1);

mysql.rds_group_replication_stop

Detiene la replicación de grupo en la instancia de base de datos actual.

Sintaxis

CALL mysql.rds_group_replication_stop();

Notas de uso

Cuando se detiene la replicación en una instancia de base de datos, esto no afecta a ninguna otra instancia de base de datos del clúster activo-activo.