Tag - queries

Visualize This! MySQL Tools That Explain Queries

MySQL Tools

In this blog post, I want to go over some of the day-to-day MySQL tools and methods DBAs use to analyze queries and visualize “what is going on?” I won’t be going into the nitty-gritty details of each of these tools, I just want to introduce you to them and show you what they […]

Read more

Four Ways MySQL Executes GROUP BY

MySQL GROUP BY

In this blog post, I’ll look into four ways MySQL executes GROUP BY. 
In my previous blog post, we learned that indexes or other means of finding data might not be the most expensive part of query execution. For example, MySQL GROUP BY could potentially be responsible for 90% or more of the query execution time. 
The […]

Read more

MySQL Query Performance: Not Just Indexes

Running MySQL in Kubernetes

In this blog post, I’ll look at whether optimizing indexing is always the key to improving MySQL query performance (spoiler, it isn’t).
As we look at MySQL query performance, our first concern is often whether a query is using the right indexes to retrieve the data. This is based on the assumption that finding the data is […]

Read more

Using MySQL 5.7 Generated Columns to Increase Query Performance

MySQL Generated Columns

In this blog post, we’ll look at ways you can use MySQL 5.7 generated columns (or virtual columns) to improve query performance.
Introduction
About two years ago I published a blog post about Generated (Virtual) Columns in MySQL 5.7. Since then, it’s been one of my favorite features in the MySQL 5.7 release. The reason is simple: […]

Read more

Webinar Thursday, October 19, 2017: What You Need to Get the Most Out of Indexes – Part 2

Indexes

Join Percona’s Senior Architect, Matthew Boehm, as he presents What You Need to Get the Most Out of Indexes – Part 2 webinar on Thursday, October 19, 2017, at 11:00 am PDT / 2:00 pm EDT (UTC-7).
Register Now

Proper indexing is key to database performance. Finely tune your query writing and database performance with tips […]

Read more

Percona Monitoring and Management 1.3.0 Query Analytics Support for MongoDB

Percona Monitoring and Management 1.3.0

Percona is pleased to announce the General Availability of Query Analytics (QAN) from Percona Monitoring and Management 1.3.0 (PMM). This new release introduces the support of MongoDB.
In general, the purpose of QAN is to help detect queries that consume the most amount of time inside of your database server. It provides detailed real-time analysis of […]

Read more

Webinar Wednesday July 5, 2017: Indexes – What You Need to Know to Get the Most Out of Them

Indexes

Join Percona’s Senior Architect, Matthew Boehm, as he presents Indexes – What You Need to Know to Get the Most Out of Them on Wednesday, July 5, 2017 at 8:00 am PDT / 11:00 am EDT (UTC-7).
Register Now

Proper indexing is key to database performance. Find out how MySQL uses indexes for query execution, and then how […]

Read more

Correct Index Choices for Equality + LIKE Query Optimization

Query Optimization

As part of our support services, we do a lot of query optimization. This is where most performance gains come from. Here’s an example of the work we do.
Some days ago a customer arrived with the following table:

Shell

CREATE TABLE `infamous_table` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`member_id` int(11) NOT NULL DEFAULT ‘0’,
[…]

Read more

Percona Live Featured Tutorial with Øystein Grøvlen — How to Analyze and Tune MySQL Queries for Better Performance

Percona Live Featured Tutorial

Welcome to another post in the series of Percona Live featured tutorial speakers blogs! In these blogs, we’ll highlight some of the tutorial speakers that will be at this year’s Percona Live conference. We’ll also discuss how these tutorials can help you improve your database environment. Make sure to read to the end to get a special […]

Read more

Speed up MySQL Queries GROUP BY with subselects

Speed up queries on MySQL

We usually try to avoid subselects because sometimes they force the use of a temporary table and limits the use of indexes. But, when is good to use a subselect?
This example was tested over table a (1310723 rows), b, c and d ( 5 rows each) and with MySQL version 5.5 and 5.6.
Let’s suppose […]

Read more