Showing entries 1 to 10 of 22170
10 Older Entries »
Displaying posts with tag: MySQL (reset)
What’s the Cost of Counting MySQL Table Rows?

What index will be used when you count all rows in a table? Well, the MySQL documentation provides a straightforward answer to this, quoting: InnoDB processes SELECT COUNT(*) statements by traversing the smallest available secondary index unless an index or optimizer hint directs the optimizer to use a different index. If a secondary index is […]

preFOSDEM MySQL Belgian Days 2025 – Agenda

The preFOSDEM MySQL Belgian Days 2025 will occur at the usual place (ICAB Incubator, Belgium, 1040 Bruxelles) on Thursday, January 30th, and Friday, January 31st, just before FOSDEM. Again this year, we will have the chance to have incredible sessions from our Community and the opportunity to meet some MySQL Engineers from Oracle. DimK will […]

Attaching a Percona Monitoring and Management Graph Image Along with an Alerting Notification

This article will be helpful if you use the Percona Monitoring and Management (PMM) instance and alert notifications, as it is nice to capture the image of the graph when you receive the alert. We will see how to capture and attach the image of the graph when receiving the alert notification (email, telegram, Slack, […]

MySQL with Diagrams Part Two: How KILL Works

Here is part two of my MySQL with Diagrams series (Here’s part one – MySQL with Diagrams Part One: Replication Architecture). We are going to explore how MySQL handles thread termination using the KILL command, as visualized in the provided diagram, and provide sample demonstrations to help you better understand. Many people think they know […]

Tracking MySQL Query Plans Part I and Rebooting This Blog

Did you ever need to determine the performance of a query over time? One of the problems with database query optimizations is that the underlying data is always churning. Add in an increase in the number of users, expanding server demand use, and other items that impact your query. What was optimized is no longer performing as expected.

MySQL added a JSON format option to the output of the EXPLAIN command quite a while ago. More recently, Oracle added the feature of saving the output into a variable (see https://dev.mysql.com/doc/refman/9.0/en/mysql-nutshell.html and https://dev.mysql.com/blog-archive/explain-into-and-explain-for-schema-in-mysql-81-and-82). This provides a way to access the data in that variable and plop it into a database. The saved result can be compared to current or other past responses for analysis. 


mysql> explain format=json into @var
       SELECT * from …

[Read more]
MySQL 8.4.3 and 9.1.0: Major Performance Gains Revealed

At Percona, we’ve always prioritized performance, and recent trends in MySQL’s development have been a point of concern for us. In particular, the performance deterioration in the MySQL 8.4.x and 9.y versions caught our attention, as highlighted in Marco Tusa’s insightful blog post, Sakila, Where Are You Going? We’re pleased to report that the latest […]

Monitoring Multi-threaded Replication Lag With Performance Schema

Used to be that replication lag was as simple as Seconds_Behind_Master (renamed to Seconds_Behind_Source). But with multi-threaded replication (MTR) this is no longer the case. It’s time to relearn replication lag monitoring using Performance Schema tables.

MySQL Transaction ERROR 1412 and Isolation Levels

This blog post explains the cause of “ERROR 1412 (HY000): Table definition has changed, please retry transaction” with the specific Isolation level settings. Background As per the MySQL documentation, this error should occur for “operations that make a temporary copy of the original table and delete the original table when the temporary copy is built.” […]

MySQL Retrospective – ISAM & MyISAM Log

Let’s stay a bit longer with MySQL 3.2x to advance the MySQL Retrospective in anticipation of the 30th Anniversary. The idea of this article was suggested to me by Daniël van Eeden. Did you know that in the early days, and therefore still in MySQL 3.20, MySQL used the ISAM storage format? IBM introduced the […]

Percona XtraBackup 101: Decompress and Decrypt or Decrypt and Decompress?

This blog is not intended to offer anything extraordinary; instead, consider it an anecdote, a lesson, or simply a proper way of doing things without the need to run a test when in doubt. That said, I must emphasize that, as always, testing everything before deploying to production is essential. Let’s dive into the story: […]

Showing entries 1 to 10 of 22170
10 Older Entries »