I recently had to do some customer work involving the McAfee MySQL Audit Plugin and would like to share my experience in this post. Auditing user activity in MySQL has traditionally been challenging. Most data can be obtained from the slow or general log, but this involves a lot of data you don’t need too, and [...]
MySQL and the SSB – Part 2 – MyISAM vs InnoDB low concurrency
This blog post is part two in what is now a continuing series on the Star Schema Benchmark. In my previous blog post I compared MySQL 5.5.30 to MySQL 5.6.10, both with default settings using only the InnoDB storage engine. In my testing I discovered that innodb_old_blocks_time had an effect on performance of the benchmark. There was [...]
Virident vCache vs. FlashCache: Part 2
This is the second part in a two-part series comparing Virident’s vCache to FlashCache. The first part was focused on usability and feature comparison; in this post, we’ll look at some sysbench test results. Disclosure: The research and testing conducted for this post were sponsored by Virident. First, some background information. All tests were conducted [...]
Virident vCache vs. FlashCache: Part 1
(This is part one of a two part series) Over the past few weeks I have been looking at a preview release of Virident’s vCache software, which is a kernel module and set of utilities designed to provide functionality similar to that of FlashCache. In particular, Virident engaged Percona to do a usability and feature-set [...]
Galera Flow Control in Percona XtraDB Cluster for MySQL
Last week at Percona Live, I delivered a six-hour tutorial about Percona XtraDB Cluster (PXC) for MySQL. I actually had more material than I covered (by design), but one thing I regret we didn’t cover was Flow control. So, I thought I’d write a post covering flow control because it is important to understand. What [...]
Testing the Micron P320h
The Micron P320h SSD is an SLC-based PCIe solid-state storage device which claims to provide the highest read throughput of any server-grade SSD, and at Micron’s request, I recently took some time to put the card through its paces, and the numbers are indeed quite impressive. For reference, the benchmarks for this device were performed [...]
Understanding the maximum number of columns in a MySQL table
This post was initially going to be two sets of polls: “What is the maximum number of columns in MySQL?” and “What is the minimum maximum number of columns in MySQL?”. Before you read on, ponder those questions and come up with your own answers… and see if you’re right or can prove me wrong! [...]
My Sessions at Percona Live MySQL Conference and Expo 2013
As is typical at the beginning of every April, many of us who submitted talks to the Percona Live MySQL Conference and Expo are wondering why we submitted so many. I had 3 official talks selected, including one that is a 6-hour tutorial, as well as a BoF. Here’s the highlights: Percona XtraDB Cluster / [...]
Repair MySQL 5.6 GTID replication by injecting empty transactions
In a previous post I explained how to repair MySQL 5.6 GTID replication using two different methods. I didn’t mention the famous SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n for a simple reason, it doesn’t work anymore if you are using MySQL GTID. Then the question is: Is there any easy way to skip a single transaction? [...]

