I’d like to be sure my accounts and permissions are intact between the servers so skipping the mysql table outright isn’t something I’d like to do. I’m not running with GTID enabled just regular master/slave replication. What what you guys recommend as a good starting point for database and/or table ignores?
Hi Matthew,
I’m not quite sure what you are trying to accomplish. You say you don’t want to skip the mysql.* tables, but then you said you wanted to ensure accounts are the same. That would be the only way to accomplish this; run pt-table-checksum for all mysql.* tables between source and replicas. If there are any differences, the chunk checksums will be different.
As best practice, I would not recommend ignoring any tables. You want your replicas to be true copies of your source in case of disaster recovery/promotion.
I’m running mysql 8 and pt-table-checksum includes the mysql.*_cost tables (and it shouldn’t be). That was my only confusion. I see a bug someone put in and I don’t know that it was ever implemented
If your replica has the same data as master, why would you want to ignore these tables? Wouldn’t having the same cost analysis on both machines produce repeatable results? This assumes software/hardware/config are otherwise also the same.
They don’t actually appear to be being updated, so I guess additional confusion on my part. lemme read up on them
https://dev.mysql.com/doc/refman/8.0/en/cost-model.html
- Cost tables are specific to a given server instance. The server does not replicate cost table changes to replicas.