Many of us have been there in the past, you get an alert telling you that replication has stopped because of an error, you dig in to it to find that you’re getting an error for an update event that is trying to update a non-existent row, or a duplicate key error because the row ID for some INSERT already exists.
Even with the server set to read only (and not using the new super_read_only variable from MySQL 5.7.8), these problems can still happen – how many of you have seen over-zealous ops trying to “quickly fix” some problem only to royally screw up your data integrity?
The question then becomes – “who or what is making changes on my replica that shouldn’t be?!?”.
The only way to find this out in the past, and still “the conventional wisdom” (I just saw it recommended …
[Read more]