2

I manage a MySQL server hosting over 100 databases.

We have set up standard master-slave replication, but the SQL Thread tends to break every so often, and requires manual intervention to re-start it. During this time the servers get out of sync.

I know that there is an option to specify which databases are/not replicated.

Is it possible to set up multiple instances of the replication thread (ideally one per database), so that if the replication breaks (and stops) on one thread, it does not stop the replication on all the rest?

Brent
  • 22,857
  • 19
  • 70
  • 102

3 Answers3

0

If the "SQL Thread tends to break every so often", it's likely best to fix the source of the problem(s). Any details on the error(s) you are encountering?

If the source of the problems can't be fixed, or the application is tolerant to the other side-affects of the problem, you could configure the types of errors to ignore via slave-skip-errors. Proceed with caution. :)

Riedsio
  • 283
  • 4
  • 7
0

It is not possible, but read about row-replication format.

Another solution maybe multiple instances of mysql server on same machine, each with own replication thread (but I never tried this solution).

lg.
  • 4,649
  • 3
  • 21
  • 20
  • Multiple instances of mysql server would prohibit load-balancing with the slave (on the standard port), so that is not an option for us. – Brent Sep 01 '09 at 16:27
  • not to mention that 100 instances of mysql would involve alot of unneccessary overhead! – Brent Sep 01 '09 at 16:27
0

The replication thread is single threaded so the statements do not get out of order.

The Continuent folks are trying to improve asynchronous replication with their Tungsten Replicator: http://www.continuent.com/community/tungsten-replicator

I haven't tried it but you might want to check it out. In a recent deck they teased about "Parallel Replication"

Cheers

HTTP500
  • 4,833
  • 4
  • 23
  • 31
  • Addendum: In a blog post today the Tungsten people wrote: "We are working on getting a full clustering solution out in open source during the week of September 7th." I'd check out what they put forth... – HTTP500 Sep 01 '09 at 21:17