April 16, 2014

MySQL: Followup on UNION for query optimization, Query profiling

Few days ago I wrote an article about using UNION to implement loose index scan. First I should mention double IN also works same way so you do not have to use the union. So changing query to:

So as you see there are really different types of ranges in MySQL. IN range allows […]

How to fix your PRM cluster when upgrading to RHEL/CentOS 6.4

If you are using Percona Replication Manager (PRM) with RHEL/CentOS prior to 6.4, upgrading your distribution to 6.4 may break your cluster. In this post I will explain you how to fix your cluster in case it breaks after a distribution upgrade that implies an update of pacemaker from 1.1.7 to 1.18. You can also […]

Percona XtraDB Cluster (PXC): what about GRA_*.log files ?

How easy is it to identify and debug Percona XtraDB Cluster replication problem ? If you are using PXC, you may have already seen in your datadirectory several log files starting with GRA_ Those files correspond to a replication failure. That means the slave thread was not able to apply one transaction. For each of […]

devops webinar – follow up Q&A

First I wanted to thanks all the attendees and for the nice comments I got. As promised during the webinar, these are the answers of the questions you asked. Q: Does Percona provide plugin for cacti? A: Yes we do. They are part of Percona Monitoring Plugins. You can see some examples here. Q: What […]

Percona XtraDB Cluster – installation and setup webinar follow up Q&A

Thanks for all, who attended my webinar, I got many questions and I wanted to take this opportunity to answer them. Q: Even ntp has a delay of 0.3-0.4 between servers does that mean a 0.25 as from logs can be an issue ? A: My demo vms were running for a few hours before […]

Recovery after DROP & CREATE

In a very popular data loss scenario a table is dropped and empty one is created with the same name. This is because¬† mysqldump in many cases generates the “DROP TABLE” instruction before the “CREATE TABLE”:

If there were no subsequent CREATE TABLE the recovery would be trivial. Index_id of the PRIMARY index of […]

Filling the tmp partition with persistent connections

The use of tmpfs/ramfs as /tmp partition is a common trick to improve the performance of on-disk temporary tables. Servers usually have less RAM than disk space so those kind of partitions are very limited in size and there are some cases were we can run out of space. Let’s see one example. We’re running […]

How to recover a single InnoDB table from a Full Backup

Sometimes we need to restore only some tables from a full backup maybe because your data loss affect a small number of your tables. In this particular scenario is faster to recover single tables than a full backup. This is easy with MyISAM but if your tables are InnoDB the process is a little bit […]

Identifying the load with the help of pt-query-digest and Percona Server

Overview Profiling, analyzing and then fixing queries is likely the most oft-repeated part of a job of a DBA and one that keeps evolving, as new features are added to the application new queries pop up that need to be analyzed and fixed. And there are not too many tools out there that can make […]

Using any general purpose computer as a special purpose SIMD computer

Often times, from a computing perspective, one must run a function on a large amount of input. Often times, the same function must be run on many pieces of input, and this is a very expensive process unless the work can be done in parallel. Shard-Query introduces set based processing, which on the surface appears […]