MySQL Proxy Load balancing and Failover Tutorial

by on August 10, 2007 · 11 comments· LAST UPDATED August 10, 2007

in , ,

MySQL Proxy is a simple and new program that sits between your client and MySQL server(s) that can monitor, analyze or transform their communication. Its flexibility allows for a wide variety of use cases, including:
a) Load balancing
b) Failover
c) Query analysis
d) Query filtering and modification
e) and many more...

MySQL Proxy tutorial

Oreilly has published a nice tutorial using MySQL proxy application:

MySQL Proxy is a lightweight binary application standing between one or more MySQL clients and a server. The clients connect to the Proxy with the usual credentials, instead of connecting to the server. The Proxy acts as man-in-the-middle between client and server.

In its basic form, the Proxy is just a redirector. It gets an empty bucket from the client (a query), takes it to the server, fills the bucket with data, and passes it back to the client.

If that were all, the Proxy would just be useless overhead. There is a little more I haven't told you yet. The Proxy ships with an embedded Lua interpreter. Using Lua, you can define what to do with a query or a result set before the Proxy passes them along.

MySQL Proxy Load balancing and Failover Tutorial - Logo

Download MySQL proxy

You can download MySQL proxy here

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!
1 matthias August 10, 2007 at 4:11 pm

Anyone tested this already? Sounds relly nice, but seems to be very new software…

2 FreeBSD Geek June 25, 2008 at 11:38 pm

Yes, anyone out there who have tested this? espcialy on a set of freebsd servers?

3 Wagner Bianchi April 21, 2009 at 5:48 pm

I have tested on a lab and it works fine. Itś a new software and have something to improve.

4 dose July 2, 2009 at 8:12 am

mysql-proxy which running on freebsd 7.2 not open a port

5 Nikolay Mihaylov July 27, 2010 at 7:39 am

anyone tested proxy + replication and read-only / read-write back-ends ?

6 gaous afrizal March 11, 2011 at 10:08 am

actually i wanna try this for my final project undergraduate
but is it possible to create load balancer based on performance from database server using this one? :)

7 yuki_1991 June 13, 2012 at 8:33 am

i jus try it this week and i think that is a great software and a easy one to perform a load balanced cluster, but mysql-proxy works with lua scripts and only works with one each time, you need to learn hot to program in lua to make a failover, load balanced cluster with mysql-proxy only..
mysql-proxy can be great but it needs more time and development.

8 Pramod June 15, 2012 at 2:32 am

Hi Vivek ,

Can use mysql proxy for the production which has 20lakhs hit to the page and lots of inserts and writes, and reads, Pleas guide me if yes like which version i have to use and, can you suggest me the read write lua scripts. if mysql proxy is not suitable what is the opensource alternate to split the mysql db.

Advance thanks

9 Jimmy Burnett February 7, 2013 at 3:01 pm

This is in alpha and MySQL recommends not to use in production.

10 sreenadh May 12, 2013 at 3:19 pm

I’ve extensive experience on mysqlproxy. If anyone want to know the details, please ;et me know

11 Cyril January 27, 2014 at 3:02 pm

@sreenadh : I would be interest to find a workable failover script for Mysql-Proxy, if you have/know one, I would be really interested to try it !

You can contact me via Twitter and we’ll share our email in DM.

Thanks :)

Comments on this FAQ are closed. If you'd like to continue the discussion on this topic, you can do so at our forum.

Tagged as: , , , , , , ,

Previous post:

Next post: