by Yves Trudeau | Jul 9, 2021 | Benchmarks, Hardware and Storage, Insight for DBAs, MySQL
As some of you likely know, I have a favorable view of ZFS and especially of MySQL on ZFS. As I published a few years ago, the argument for ZFS was less about performance than its useful features like data compression and snapshots. At the time, ZFS was significantly...
by Yves Trudeau | May 27, 2021 | Insight for DBAs, MySQL, Storage Engine
Recently we had a debate in the consulting team about how InnoDB handles TEXT/BLOB columns. More specifically, the argument was around the Barracuda file format with dynamic rows. In the InnoDB official documentation, you can find this extract: When a table is created...
by Sveta Smirnova | Apr 2, 2021 | Insight for DBAs, MySQL, Percona Software
Recovering to a particular time in the past is called Point-In-Time Recovery (PITR). With PITR you can rollback unwanted DELETE without WHERE clause or any other harmful command. PITR with Percona XtraBackup is pretty straightforward and perfectly described in the...
by Sri Sakthivel | Feb 11, 2021 | Insight for DBAs, MySQL, Storage Engine
The goal of this blog post is to explain the various types of transaction isolation levels available in MySQL. After reading the blog, you will be able to explain dirty reads, non-repeatable reads, and the concept of phantom rows as well. What is the Isolation Level...
by Pep Pla | Jan 19, 2021 | Benchmarks, Insight for DBAs, MySQL, Percona Software
Large replication topologies are quite common nowadays, and this kind of architecture often requires a quick method to rebuild a replica from another server. The Clone Plugin, available since MySQL 8.0.17, is a great feature that allows cloning databases out of the...
by Francisco Bordenave | Sep 30, 2020 | Insight for DBAs, MySQL, Storage Engine
In this post, we will discuss what to do when you add more memory to your instance. Adding memory to a server where MySQL is running is common practice when scaling resources. First, Some Context Scaling resources is just adding more resources to your environment, and...
by Vadim Tkachenko | Aug 27, 2020 | Benchmarks, Insight for DBAs, MySQL
Recently I posted about checkpointing in MySQL, where MySQL showed interesting “wave” behavior. Soon after Dimitri posted a solution with how to fix “waves,” and I would like to dig a little more into proposed suggestions, as there are some materials to process. This...
by Sri Sakthivel | Aug 27, 2020 | Insight for DBAs, MySQL, Percona Software
by Vadim Tkachenko | Aug 14, 2020 | Benchmarks, Insight for DBAs, Insight for Developers, MySQL
Part one of this series can be found here: How Many innodb_buffer_pool_instances Do You Need in MySQL 8? Following up on my recent benchmark posts on MySQL and MariaDB, MySQL and MariaDB on Enterprise SSD Storage and How MySQL and MariaDB Perform on NVMe Storage, I...
by Vadim Tkachenko | Aug 13, 2020 | Benchmarks, Insight for DBAs, Insight for Developers, MySQL
Following up on my recent benchmark posts on MySQL and MariaDB, MySQL and MariaDB on Enterprise SSD Storage and How MySQL and MariaDB Perform on NVMe Storage, I wanted to dig a little deeper and understand how different MySQL parameters affect performance. One of the...
by Sri Sakthivel | Jul 27, 2020 | Benchmarks, Insight for DBAs, Insight for Developers, MySQL
I would say that innodb_rollback_on_timeout is a very important parameter. In this blog, I am going to explain “innodb_rollback_on_timeout” and how it affects the transaction behavior at the MySQL level. I describe two scenarios with practical tests, as it would be...
by Yves Trudeau | May 14, 2020 | Insight for DBAs, MySQL
In this post, the third in a series explaining the internals of InnoDB flushing, we’ll focus on tuning. (Others in the series can be seen at InnoDB Flushing in Action for Percona Server for MySQL and Give Love to Your SSDs – Reduce innodb_io_capacity_max!)...
by Jericho Rivera | May 5, 2020 | Insight for DBAs, MySQL, Percona Software
by Uday Varagani | Apr 24, 2020 | Insight for DBAs, Monitoring, MySQL
A couple of weeks ago, one of our customers reached us asking about the WARNING messages in their MySQL error log. After a while, there were a few more requests from some other customers asking whether to worry about these messages or not. In this post, I am going to...
by Marco Tusa | Mar 26, 2020 | Benchmarks, MySQL, Open Source
What You May Not Know About Random Number Generation in Sysbench Sysbench is a well known and largely used tool to perform benchmarking. Originally written by Peter Zaitsev in early 2000, it has become a de facto standard when performing testing and benchmarking....
by Peter Zaitsev | Feb 25, 2020 | MySQL, Storage Engine
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...
by Peter Zaitsev | Jan 13, 2020 | MySQL, Storage Engine
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...
by Sveta Smirnova | Jan 2, 2020 | MySQL
First I want to thank everyone who attended my December 19, 2019 webinar “Top 3 Features of MySQL“. Recording and slides are available on the webinar page. Here are answers to the questions from participants which I was not able to provide during the webinar. Q: When...
by Marcelo Altmann | Sep 4, 2019 | MySQL
Working as a support engineer here at Percona is amazing, as you get a variety of requests, ranging from the most trivial questions to questions that require source code review and understanding of the internals of InnoDB, for example. In our world where High...