MySQL binlog format change from MIXED to ROW

amazon-rdsMySQLmysql-5.5mysqlbinlog

One of my customer has MySQL master-slave setup at on-premises, where the binlog format is kept to be MIXED. Now, we are planning to migrate the DB to AWS RDS using DMS, the binlog format should be kept as ROW. I am not sure whether MIXED to ROW at this point of time at source will impact the source DB or replications. I see MySQL docs talking about the implication of STATEMENT to ROW change, but not from MIXED to ROW. Can someone help me on this.?

If the above is not doable, another plan is to go with Daisy chain approach, where an EC2 instance is created as slave connected to the slave DB of on-prem. This EC2 slave should have the binlog format as ROW. Even in this case, at on-prem the binlog would be MIXED and EC2 slave would be ROW. I am not sure whether this approach (within the same DB) will work, or anything break.

Any expert suggestion/solution (with MySQL document reference for the solution, if possible) would be much appreciated.

Best Answer

I've watched the move from STATEMENT -> MIXED -> ROW over the past decade or more. There has been virtually no hiccups. So, I would not worry.

ROW is essentially required for some clustering solutions, etc. There are subtle things that can go 'wrong' in STATEMENT replication, where ROW solves it.

If RDS requires ROW, go with it.