Storage Engine

DBA Concerns About Next-Gen, Non-Volatile Memory Storage Products

DBA Concerns Memory Storage

Abstract: Storage engine algorithmic gains have mostly settled and Moore’s law for CPU speed is bottoming out, but database performance still stands to increase ~10x thanks to continuing NAND Flash improvement, Optane, Flash-idiomatic SSD drives (e.g. OpenChannel, Zoned Namespaces), KeyValue SSD, etc. The downside is each storage engine revolution historically has broken encapsulation/reuse and […]

Read more

MySQL ERROR 1034: Incorrect Key File on InnoDB Table

MySQL ERROR 1034: Incorrect Key File on InnoDB Table

Sometimes, you may experience “ERROR 1034: Incorrect key file” while running the ALTER TABLE or CREATE INDEX command:

Shell

mysql> alter table ontime add key(FlightDate);
ERROR 1034 (HY000): Incorrect key file for table ‘ontime’; try to repair it

12

mysql> alter table ontime add key(FlightDate);ERROR 1034 (HY000): Incorrect key file for table ‘ontime’; try to repair it

As the error […]

Read more

A Hidden Gem in MySQL: MyRocks

using MyRocks in MySQL

In this blog post, we will share some experiences with the hidden gem in MySQL called MyRocks, a storage engine for MySQL’s famous pluggable storage engine system. MyRocks is based on RocksDB which is a fork of LevelDB. In short, it’s another key-value store based on LSM-tree, thus granting it some distinctive features compared […]

Read more

InnoDB Flushing in Action for Percona Server for MySQL

InnoDB Flushing in Action for Percona Server for MySQL

As the second part of the earlier post Give Love to Your SSDs – Reduce innodb_io_capacity_max! we wanted to put together some concepts on how InnoDB flushing works in recent Percona Server for MySQL versions (8.0.x prior to 8.0.19, or 5.7.x). It is important to understand this aspect of InnoDB in order to tune […]

Read more

Examining MySQL InnoDB Persistent Statistics

MySQL InnoDB Persistent Statistics

A few days ago I wrote about how grossly outdated statistics returned through MySQL’s Information_Schema can be. In that post, Øystein Grøvlen suggested taking a look at mysql.innodb_table_stats and mysql.innodb_index_stats as a better source of information. Let’s do just that!
Let’s start with the good news. Unlike MySQL Data Dictionary Tables (mysql.table_stats, etc),  mysql.innodb_table_stats and […]

Read more