Craig Ringer wrote:
Here is a link that describes the technique: http://www.onlamp.com/pub/a/onlamp/2006/04/20/advanced-mysql-replication.html?page=1On Mon, 2009-06-22 at 21:29 -0400, Gerry Reno wrote:I don't know how it could guarantee that. That's really why row-based is better.Yep, especially in the face of things like user PL functions, C functions, etc. This page: http://dev.mysql.com/doc/refman/5.0/en/replication-features-functions.html is downright alarming, and (implicitly) says quite enough about how statement-based replication is a really, REALLY bad idea. Rather than replicating sets of changed rows, though, I suspect that block-level replication using the WAL is probably more efficient. Certainly it'll be easier on the slave in terms of the work required to keep up with the master. I guess block-level replication isn't much good for multi-master, though, since you'd be spending half your time finding out what the other masters were doing and what their state was, or telling them about yours. (I guess that's the case anyway to some extent, though, any time you have concurrent statements on different masters using the same data and one or more of them is altering it).Sequences I deal with by setting up an offset and increment for each replica so that there are no conflicts.Ah, so you don't actually care if the replicas are identical - you expect things like different primary keys on master and replicas(s) ? How do your applications cope if they switch from one replica to another and suddenly primary key identifiers are different? <snip> Regards, Gerry |