<p>The primary and replica table definitions differ, halting row based replication.</p>
<p>MySQL Error 1535: ER_BINLOG_ROW_WRONG_TABLE_DEF occurs when the table schema on the replica differs from the master, stopping row based replication. Align the schemas with ALTER TABLE or rebuild the replica to resolve the mismatch.</p>
Table definition on master and slave does not match: %s
Error 1535 fires during row based replication when MySQL detects that the structure of a table on the replica does not match the structure stored in the binary log event generated on the primary.
The mismatch forces the replica SQL thread to stop, because applying row changes against an incompatible table could corrupt data.
The error appears immediately after a DDL change on the master is replicated, or after a replica restart if schema drift was introduced manually.
It is most common after online schema migrations, manual hotfixes on replicas, or incomplete deployments that altered only one side.
While the replica is stopped it no longer receives updates, leading to stale reads, broken failover, and potential data loss during a switchover.
Production clusters relying on read scaling or high availability can suffer serious performance and consistency issues until replication is restored.
Differences in column order, data type, default values, or index definitions between master and replica tables trigger the mismatch.
Row based replication records column metadata, so even seemingly harmless column reordering breaks compatibility.
Stop application writes or isolate the affected table, then modify the replica schema so it exactly matches the master.
Use SHOW CREATE TABLE on both nodes, generate an ALTER TABLE that reconciles differences, apply it on the replica, and START SLAVE until Seconds_Behind_Master is zero.
Online schema migration on master but not replica - apply the same migration on the replica or rebuild it from backup.
Manual hotfix on replica - reverse the change or rebuild replica to ensure no hidden drift remains.
Automate DDL deployments so changes reach all servers simultaneously and are version controlled.
Use pt-table-checksum or mysqlcheck regularly, and run Galaxy schema diff before merging DDL to catch divergence early.
Error 1534 ER_SLAVE_IGNORED_TABLE - occurs when replication filters skip a table referenced in a binlog event. Review replicate-wild-* rules.
Error 1794 ER_MASTER_FATAL_ERROR_READING_BINLOG - raised when the replica cannot read the master's binary log. Check network, TLS, and log file availability.
Adding a column with AFTER on one server can shift positions and break row event mapping.
Changing INT to BIGINT or CHAR length on master only causes metadata disagreement.
Divergent DEFAULT expressions alter field metadata and trigger the error.
Indexes are part of the table definition checksum used by replication, so missing or extra indexes raise a mismatch.
Direct DDL on replicas meant for temporary debugging often remains unnoticed until replication stops later.
Replication ignored a table specified in a row event due to filter rules.
A critical replication error such as table corruption stopped the SQL thread.
The replica cannot read the master's binary log file, often due to network or file removal.
A row expected by the binlog event is missing on the replica, causing replication to stop.
Yes. Row events reference columns by position, so any difference in ordering produces Error 1535.
Skipping is risky because every subsequent event may fail. Always fix the schema mismatch instead of skipping.
Galaxy tracks DDL versions and highlights schema diffs across environments, preventing unnoticed drift before deployment.
For very large schema drift or multiple tables, provisioning a fresh replica from backup can be quicker and safer.