Once the replication system is setup and running, it is not uncommon that one might want to verify if the data is being correctly replicated on the slaves. In normal circumstances, the same data is expected on the master and its slaves (excluding the use of filtering rules). Nevertheless, faults at the data level can introduce inconsistent changes on servers without raising any kind of error. These data inconsistencies can result from bugs, hardware malfunction, human errors, or unauthorized access.
It is desirable to detect these issues, in order to fix them and ultimately prevent them from happening again. Determining the cause of such issue might not be an easy task since it might be caused by byzantine failures at distinct levels. However, the first big step toward a solution to this kind of problem is being able to detect data consistency issues and make sure that the data among the replication servers is synchronized.