Is there any way to run pt-table-checksum in a mixed environment where some slaves have a full copy of the masters data and some slaves only have a few dbs?
Can pt-table-checksum be made smarter with a flag like --ignore-dbs-that-dont-exist ?
The way i’ve been running it in the meantime is explicitly listing the dbs that exist on all the servers which isn’t ideal because some dbs don’t get checked.
Unfortunately this is one caveat to using pt-table-checksum in environments with filtered databases and/or tables.
Since pt-table-checksum is always ran on the source, there’s no way to know which replicas have or do not have certain dbs/tables. pt-t-c does not run queries on the replicas. The checksum query is a REPLACE statement which is ONLY executed on the source and is then replicated and re-executed on each replica. This is why simply saying ‘ignore dbs that don’t exist’ won’t work because the query runs on the source, where all dbs/tables exist.