MySQL replication with NULL-able column on Master and NOT NULL on Slave

344 Views Asked by At

I got Master table with such column defined: INT DEFAULT NULL; and the Slave having that column defined as NOT NULL;. InnoDB engine.

SQL mode on both servers is:ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION.

The question is: why INSERT to that column NULL value on Master successfully replicated on Slave (inserting "0" value)? (I expect it to fail).

I even took that statement and run it on Slave and it gave the expected error "column col cannot be null". But the same statement succeeds when replicating...

Hope to get the answer :) P.S. sorry for my English.

0

There are 0 best solutions below