Omitir una transacción rota (GTID)
MySQLReplicaciónComando
STOP REPLICA; SET GTID_NEXT='aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee:15'; BEGIN; COMMIT; SET GTID_NEXT='AUTOMATIC'; START REPLICA;Qué hace
Hace commit de una transacción vacía para el GTID indicado, de modo que esa transacción cuente como 'aplicada', y permite que la replicación continúe.
Cuándo usarlo
Cuando un evento duplicado/no aplicable en la réplica detiene la replicación, para omitir ese evento.
Precaución
Omitir una transacción crea una inconsistencia de datos entre la réplica y el origen; úselo solo cuando conozca el efecto del evento omitido. Tome el valor de GTID de Last_Error / Retrieved_Gtid_Set en SHOW REPLICA STATUS. Si GTID está desactivado, use SET GLOBAL sql_replica_skip_counter = 1; (8.0.26+; antes sql_slave_skip_counter, un alias obsoleto en 8.0.26+).
Relacionado
- Configurar una réplica (CHANGE REPLICATION SOURCE)
- Iniciar / detener una réplica
- Ver el estado de la réplica (SHOW REPLICA STATUS)
- Monitorear el lag de la réplica y los errores de los workers del applier (performance_schema)
- Ajustar la réplica multi-threaded (replica_parallel_workers)
- Reparar una réplica rota: conflictos de filas 1062 / 1032