2

I am looking at a replicated system that replicates four different databases to a bunch of slaves. I am having a problem that one application/database is running some big queries that are holding up replication in the other databases.

Obviously I am looking at other ways to deal with this problem, but one of my thoughts is to whether it's possible to have each database use separate binary logs, so that one log being stuck doesn't hold up updates to the other databases.

Ben Holness
  • 2,457
  • 3
  • 28
  • 49
  • Can you clarify Are these "big queries" writes that execute slowly on the slaves pushing replication behind, Are the selects that are blocking replication on the slaves? – atxdba Jul 24 '14 at 20:38
  • The "big queries" are selects on the slaves that prevent that stop an insert, update or delete from the master from being run on that table, as a result the following queries for the other databases are also being held up – Ben Holness Jul 28 '14 at 11:40

3 Answers3

0

Separate instances. At least for the one application.

MrCleanX
  • 416
  • 2
  • 13
0

MySQL 5.6 supports Multi-Threaded Slaves which would solve your problem without creating new instances.

Tungsten Replicator may also be an option if you aren't able to upgrade to 5.6.

Brian Papantonio
  • 860
  • 1
  • 7
  • 9
0

You might consider looking at the replicate-ignore-database settings for slaves. Of course that means this db won't be available on your slave, but it sounds like that's what you're asking for.

atxdba
  • 5,158
  • 5
  • 24
  • 30
  • That's not what I'm looking for as I need all databases replicated on the slave, I am just trying to determine if the replication can be run in parallel for each database rather than in serial across them all – Ben Holness Jul 28 '14 at 11:42