MySQL Proxy Load balancing and Failover Tutorial

last updated in Categories CentOS, Debian Linux, Download of the day, High performance computing, Howto, Linux, Monitoring, MySQL, RedHat/Fedora Linux, Suse Linux, Tuning, Ubuntu Linux, UNIX

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


Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

11 comment

  1. I have tested on a lab and it works fine. ItΓ…β€Ί a new software and have something to improve.

  2. 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? πŸ™‚

  3. 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.

  4. 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

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

    1. @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 πŸ™‚

    Have a question? Post it on our forum!