May 21, 2013

Sphinx search performance optimization: attribute-based filters

One of the most common causes of a poor Sphinx search performance I find our customers face is misuse of search filters. In this article I will cover how Sphinx attributes (which are normally used for filtering) work, when they are a good idea to use and what to do when they are not, but [...]

Profiling MySQL Memory Usage With Valgrind Massif

There are times where you need to know exactly how much memory the mysqld server (or any other program) is using, where (i.e. for what function) it was allocated, how it got there (a backtrace, please!), and at what point in time the allocation happened. For example; you may have noticed a sharp memory increase [...]

Percona Toolkit 2.1.8 released today with beta support for MySQL 5.6

Percona Toolkit 2.1.8 was released today and the new version comes with some pretty cool news: Beta support for MySQL 5.6 (which as you might know is also in beta). In addition to various bug fixes, Percona Toolkit 2.1.8 also offers beta support for Percona XtraDB Cluster (PXC). Version 2.1.8 continues the trend of solid [...]

How does MySQL Replication really work?

While we do have many blog posts on replication on our blog, such as on replication being single-threaded, on semi-synchronous replication or on estimating replication capacity, I don’t think we have one that covers the very basics of how MySQL replication really works on the high level. Or it’s been so long ago I can’t [...]

Announcing Percona Server 5.5.28-29.3

Percona is glad to announce the release of Percona Server 5.5.28-29.3 on January 8th, 2012 (Downloads are available here and from the Percona Software Repositories). Based on MySQL 5.5.28, including all the bug fixes in it, Percona Server 5.5.28-29.3 is now the current stable release in the 5.5 series. All of Percona‘s software is open-source and free, all the details of the release can [...]

Percona Toolkit Webinar followup Q&A

First, a thank you to everyone who attended the webinar Today, I appreciate your time and nice comments. As promised, here are answers to questions that couldn’t be answered during the talk:   Q: How do you install the tools? The manual has full details, but it’s important to know that the latest release for [...]

Announcing Percona Playback 0.5

Percona is glad to announce the release of Percona Playback 0.5 on November 26th, 2012. Downloads are available from our download site and Percona Software Repositories. Percona Playback is a tool for replaying the load of one database server to another. Currently it can read queries from MySQL query-log and tcpdump files and run them [...]

Full table scan vs full index scan performance

Earlier this week, Cédric blogged about how easy we can get confused between a covering index and a full index scan in the EXPLAIN output. While a covering index (seen with EXPLAIN as Extra: Using index) is a very interesting performance optimization, a full index scan (type: index) is according to the documentation the 2nd [...]

Get Me Some Query Logs!

One of my favorite tools in the Percona Toolkit is pt-query-digest.  This tool is indispensable for identifying your top SQL queries, and analyzing which queries are accounting for your database load. But the report you get from pt-query-digest is only as good as the log of queries you give it as input.  You need a large [...]

Replaying database load with Percona Playback

If you are planning to upgrade or make any configuration change on your MySQL database the first advice usually is: – Benchmark! How should we do that benchmark? People usually run generic benchmark tools like sysbench, tpcc or mysqlslap that are good to know the number of transactions per seconds that a database can do [...]