EmergencyEMERGENCY? Get 24/7 Help Now!

Optimizing MySQL for Zabbix

 | November 14, 2014 |  Posted In: High-availability, InnoDB, MySQL

This blog post was inspired by my visit at the annual Zabbix Conference in Riga, Latvia this year, where I gave a couple of talks on MySQL and beyond. It was a two day single-track event with some 200 participants, a number of interesting talks on Zabbix (and related technologies) and really well-organized evening activities. […]

Read More

How to deal with MySQL deadlocks

 | October 28, 2014 |  Posted In: InnoDB, Insight for DBAs, MySQL, Percona Server for MySQL

A deadlock in MySQL happens when two or more transactions mutually hold and request for locks, creating a cycle of dependencies. In a transaction system, deadlocks are a fact of life and not completely avoidable. InnoDB automatically detects transaction deadlocks, rollbacks a transaction immediately and returns an error. It uses a metric to pick the […]

Read More

Recover orphaned InnoDB partition tablespaces in MySQL

 | October 14, 2014 |  Posted In: InnoDB, MySQL

A few months back, Michael wrote about reconnecting orphaned *.ibd files using MySQL 5.6. I will show you the same procedure, this time for partitioned tables. An InnoDB partition is also a self-contained tablespace in itself so you can use the same method described in the previous post. To begin with, I have an example […]

Read More

MySQL compression: Compressed and Uncompressed data size

 | October 10, 2014 |  Posted In: InnoDB, MySQL, Percona Server for MySQL, TokuDB

MySQL has information_schema.tables that contain information such as “data_length” or “avg_row_length.” Documentation on this table however is quite poor, making an assumption that those fields are self explanatory – they are not when it comes to tables that employ compression. And this is where inconsistency is born. Lets take a look at the same table […]

Read More

More then 1000 columns – get transactional with TokuDB

 | September 25, 2014 |  Posted In: InnoDB, Insight for DBAs, Insight for Developers, MySQL, TokuDB

Recently I encountered a specific situation in which a customer was forced to stay with the MyISAM engine due to a legacy application using tables with over 1000 columns. Unfortunately InnoDB has a limit at this point. I did not expect to hear this argument for MyISAM. It is usually about full text search or […]

Read More

OpenStack users shed light on Percona XtraDB Cluster deadlock issues

 | September 11, 2014 |  Posted In: InnoDB, Insight for DBAs, MySQL, OpenStack, Percona MySQL Consulting, Percona XtraDB Cluster

I was fortunate to attend an Ops discussion about databases at the OpenStack Summit Atlanta this past May as one of the panelists. The discussion was about deadlock issues OpenStack operators see with Percona XtraDB Cluster (of course this is applicable to any Galera-based solution). I asked to describe what they are seeing, and as […]

Read More

When (and how) to move an InnoDB table outside the shared tablespace

 | August 22, 2014 |  Posted In: InnoDB, Insight for DBAs, MySQL, Percona MySQL Support, Percona Server for MySQL, TokuDB

In my last post, “A closer look at the MySQL ibdata1 disk space issue and big tables,” I looked at the growing ibdata1 problem under the perspective of having big tables residing inside the so-called shared tablespace. In the particular case that motivated that post, we had a customer running out of disk space in his […]

Read More

A closer look at the MySQL ibdata1 disk space issue and big tables

 | August 21, 2014 |  Posted In: Benchmarks, InnoDB, Insight for DBAs, MySQL, Percona MySQL Support

A recurring and very common customer issue seen here at the Percona Support team involves how to make the ibdata1 file “shrink” within MySQL. I can only imagine there’s a degree of regret by some of the InnoDB architects on their design decisions regarding disk-space management by the shared tablespace* because this has been a big […]

Read More