MySQL is one of the most widely deployed open-source database systems in use today, and it’s an integral part of the common LAMP (Linux, Apache, MySQL, and PHP/Perl/Python) development platform for web servers.
Businesses centered around data-intensive processing, such as e-commerce or online transaction processing, know that stability and performance are imperative to their bottom line. Dropouts or lags in response can be annoying at the least, and potentially damaging to the business if allowed to become a chronic problem.
If your system isn’t keeping up with demands, problem areas like the size of your database, how busy it is, and the state of your hardware is some of the first things to look into. But you might want to take a look at your software as well. Can you squeeze more performance out of MySQL before you have to consider hardware investments? One option that promises to do so comes from Percona Inc.—Percona Server.
Percona's Take on MySQL
Percona Server is based on the original MySQL code, but functions as a drop-in that replaces MySQL. Percona Server’s goal has been to identify and address areas where performance could be improved, and it promises to deliver increases in stability, performance, and monitoring capabilities.
Like MySQL, Percona Server is open-source, so it’s free and it benefits from additions from the community. Percona Inc. takes these and other improvements and makes them available as a package to the general public.
What Does Percona Server do Differently?
Among other things, Percona Server takes advantage of the advances in multi-core CPUs, multithreading, and solid-state drives. Percona Server contains optimized algorithms for background processing, and enhancements to buffers, caches, and other components.
As demands on a MySQL database increase, say during peak loads, significant drops in response time can occur. Percona Server focused on the causes of these dropouts and other weak points to help ensure a more consistent and stable experience for customers.
Moving from MySQL to Percona Server is relatively straightforward—in essence it is a matter of shutting down MySQL, backing up the database, uninstalling MySQL, and then installing the comparable version of Percona Server in its place. You can perform the installation during a maintenance window, and often in a matter of minutes depending on how long it takes to back up your database.
Percona Server is backward-compatible with MySQL, so your developers don’t need to change code or rewrite queries. Moving from an earlier version of MySQL to a later version of Percona Server might introduce some additional complexity, but there is a broad community of support available, as well as support contracts from Percona to fix issues.
Once you begin using Percona server, one additional benefit is that there are more status counters available for monitoring than in MySQL, so you can get a clearer picture of what’s happening with your database. Verbose log files can also provide clues to aid in troubleshooting if queries are running poorly or if you notice other issues.
Is Percona Server Right for You?
If you’re a smaller company or organization and you haven’t noticed any degradation in your database performance, there probably isn’t a compelling reason to change, at least not at the moment. But as your business grows and you find response times don’t seem as snappy as they once were, Percona Server might be the answer.
For more information, visit the Percona Server website where you can also find benchmark studies, documentation, wiki and white papers to help you decide.
Have you made the switch to Percona Server? How easy was the change for your business? Have you noticed any improvement in performance?