Today I was looking at the ALTER TABLE performance with fast index creation and without it with different buffer pool sizes. Results are pretty interesting. I used modified Sysbench table for these tests because original table as initially created only has index on column K which initially contains only zeros, which means index is very [...]
NO Security vulnerability in Percona Server / XtraDB Cluster provided binaries
Many of you heard of this nasty security vulnerability in MySQL, and as we are getting a lot of inquiries how does it affect Percona Server, I decided to address it in this post. The issue exists in the source code of MySQL 5.5.23 or earlier and MySQL 5.1.62 or earlier. The same is true [...]
Introducing Zend DBi as a MySQL Replacement on IBM i
You might have heard that Oracle made the decision not to support MySQL for IBM i any longer. This is certainly understandable. However, there are still users who want to continue running IBM i and MySQL. That’s why we’re happy to announce that we have assisted Zend to introduce Zend DBi as a drop-in replacement [...]
Innodb vs MySQL index counts
I had a customer recently who a few strange errors in their mysqld.err log:
1 | [ERROR] Table database_name/table_name contains 8 indexes inside InnoDB, which is different from the number of indexes 7 defined in the MySQL |
This customer was running Percona Server 5.1 and they got this error on two tables during a maintenance window when they were adding indexes to the same tables. We had a suspicion that it had something to do with Fast [...]
MySQL Life Cycle. Your Feedback is needed.
When I started with MySQL 3.22 I would start running MySQL from early beta (if not alpha) and update MySQL the same date as release would hit the web. Since that time I matured and so did MySQL ecosystem. MySQL is powering a lot more demanding and business critical applications now than 12 years ago [...]
Improved InnoDB fast index creation
One of the serious limitations in the fast index creation feature introduced in the InnoDB plugin is that it only works when indexes are explicitly created using ALTER TABLE or CREATE INDEX. Peter has already blogged about it before, here I’ll just briefly reiterate other cases that might benefit from that feature: when ALTER TABLE [...]
Percona XtraBackup 1.6 for Windows “try me” edition
Previously we had XtraBackup Windows binaries for 1.0 and 1.2 releases, and they were based on Cygwin compilation of MySQL. After MySQL 5.5 moved to CMake, and cygwin compilation is not supported anymore, it took some efforts for us to come up with native Windows builds, but they are there already. We consider them “alpha” [...]
Flexviews – part 3 – improving query performance using materialized views
Combating “data drift” In my first post in this series, I described materialized views (MVs). An MV is essentially a cached result set at one point in time. The contents of the MV will become incorrect (out of sync) when the underlying data changes. This loss of synchronization is sometimes called drift. This is conceptually [...]
Using Flexviews – part one, introduction to materialized views
If you know me, then you probably have heard of Flexviews. If not, then it might not be familiar to you. I’m giving a talk on it at the MySQL 2011 CE, and I figured I should blog about it before then. For those unfamiliar, Flexviews enables you to create and maintain incrementally refreshable materialized [...]
Spreading .ibd files across multiple disks; the optimization that isn’t
Inspired by Baron’s earlier post, here is one I hear quite frequently – “If you enable innodb_file_per_table, each table is it’s own .ibd file. You can then relocate the heavy hit tables to a different location and create symlinks to the original location.” There are a few things wrong with this advice:

