According to current documentation, SBR is the default for MySQL 5.5
In the question, it says It is well known that mixed-mode replication was default from MySQL 5.1.12 to MySQL 5.1.28.
However, it is worthy noting that
- MySQL 5.1.30 is the first GA release of MySQL 5.1 (Dec 2008)
- MySQL 5.1.24 was released Apr 2008
- MySQL 5.1.12 was released Nov 2006
In light of this, technically speaking, early GA releases of MySQL 5.1 are always SBR by default. In addition
- Oracle bought Sun April 20, 2009, predating Oracle involvement in MySQL 5.1 rc versions
- Sun bought MySQL Jan 2008, predating Sun's initial involvement in MySQL 5.1 rc versions
So, the proper question is Why did MySQL AB not incorporate mixed-mode replication in MySQL 5.1?
IMHO I could easily see that being the case. Oracle would naturally have a hands-off approach to describing the problem and claiming any responsibility. While Oracle has always used RBR in its flagship database, I don't see Oracle stepping in to make RBR have any sort of limelight in MySQL.
From another angle, since MySQL can readily run on commodity hardware, SBR would be more than adequate. One would also not be bludgeoned to death by rapidly growing binary logs. Larger MySQL installations with advanced replication setups would be better suited for RBR.
Getting around issues with using SBR, RBR, and Mixed should be as simple as clearing all relay logs and starting replication from scratch on any given SlaveGetting around issues with using SBR, RBR, and Mixed should be as simple as clearing all relay logs and starting replication from scratch on any given Slave.