Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a webserver in my application which talks to a single MySQL node. Instead of having just one MySQL node, I want to have a cluster of n nodes which form my database.

Is it possible to do this? Can some one point to a resource where I can read about how to do this.

I read about MySQL cluster but am more confused now; is there any beginner tutorial for that?

I don't want to rewrite the application, as I am under the impression that application code should never know whether it's talking to one DB node or a cluster of DB Nodes.

share|improve this question

migrated from Aug 29 '12 at 11:35

This question came from our site for professional and enthusiast programmers.

Are you looking for something like this?… – Bjoern Aug 29 '12 at 9:13
sorry but i haven't got a bit of it. My problem is i have a database and a table in it. Now this table is too huge, i just wnat to split it up and keep in say 4 different systems(nodes or computers). but when this database is accessed from my application it should work as though it is in one system. I hope i am clear. – Thebestshoot Aug 29 '12 at 9:26
So you want different records of a table on different servers? How are you expecting to code the searching of records? – BugFinder Aug 29 '12 at 9:40
yes it is what i am expecting.i don't think the application code should change anyway, the DB has to have some way to doing this.The application should just work as it was communicating to a single node. – Thebestshoot Aug 30 '12 at 5:00

This technique is called Sharding.

MySQL doesn't support this kind of partitioning therefore is necessary to implement sharding logic manually.

I think Spock Proxy, for example, it's a good starting point to think in this direction

Hope this helps

share|improve this answer

Clustrix, ScaleDB, etc., have solutions for $$$.

But wait... Do you really need Sharding? Or do you just need Replication, and have a load balancer in front of a few readonly Slaves?

Slaves solve read-scaling. Sharding solves write-scaling.

Replication is available out-of-the-box.

share|improve this answer
i am not in need of replication but i want both read and writes scaling. – Thebestshoot Aug 30 '12 at 4:51


You can take a look into MySQL Fabric (Official Doc)

I have tried this tool only in R&D env for testing a basic HA

It supports some sharding scenarios

Here some high level pros and cons


  • setup
  • sharding
  • write/read
  • basic HA


  • fabric node is the SPOF
  • no multi master
  • rewrite software in order to use the fabric driver
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.