Most people don’t backup their databases, much less set up redundancy. It’s an important thing to consider when your application / website just cannot go down.
This article discusses what it will take to set up that type of redundancy and I will be following up with a document on how to do it in Mysql.
There are many types of redundancy. The most important thing to consider when creating redundant infrastructures is to set up a Master-Master situation or Master-Slave situation.
The problem with a Master / Slave situation is when the master goes down, you’re up and running, but recovering the master could be a problem.
The other thing to consider is to NOT place both database servers on the same machine or even in the same location.
It’s important to consider that.
My suggestion is to put one in the cloud and load balance across the masters. If you’re running a CMS or a database-backed website, you need to set up a duplicate application server in the secondary location as well. Data will be duplicated in real-time and regardless of whether you hit one application server or the other, the data is replicated.
My personal suggestion is to set up a master-to-master on two locations that are adjacent on the same internet backbone. This gives you fiber connectivity in most cases between the sites and replication is near instant (usually in the millliseconds range).
People don’t think about this very often and all it leads to is problems. Having one webserver up and one database is a recipe for disaster. If your solution is to set it up and then forget about it, you could end up losing a lot of data, uptime, and money.
It happens more than you would think.
I’m available to set this up on a consulting basis for anybody that needs this type of redundancy.
It also load balances your system / applications and will give you more speed and service your customers better, thus giving them a happier experience.
Remember, a happy customer is a returning customer.