Percona Resources

Software
Downloads

All of Percona’s open source software products, in one place, to download as much or as little as you need.

Valkey Contribution

Product Documentation

Why Percona for MongoDB?

Why Percona for PostgreSQL?

Percona Blog

Percona Blog

Our popular knowledge center for all Percona products and all related topics.

Community

Percona Community Hub

A place to stay in touch with the open-source community

Events

Percona Events Hub

See all of Percona’s upcoming events and view materials like webinars and forums from past events

About

About Percona

Percona is an open source database software, support, and services company that helps make databases and applications run better.

Percona in the News

See Percona’s recent news coverage, press releases and industry recognition for our open source software and support.

Our Customers

Our Partners

Careers

Contact Us

Sveta Smirnova
Sveta joined Percona in 2015. Her main professional interests are problem solving, working with tricky issues, bugs, finding patterns that can solve typical issues quicker and teaching others how to deal with MySQL issues, bugs and gotchas effectively. Before joining Percona Sveta worked as a Support Engineer in the MySQL Bugs Analysis Support Group in MySQL AB-Sun-Oracle. She is the author of the books "MySQL Troubleshooting" and "MySQL Cookbook, 4th Edition".

Partial Data Archiving and Schema Change

Starting from Percona Toolkit 3.6.0, pt-online-schema-change supports the option –where, so you can not only alter your table definition live but copy only rows that satisfy certain criteria. It may happen that you may not need to copy all the data when changing table definition. For example, if the table is too big and you […]

Resume Your Failed pt-online-schema-change Job

Starting from Percona Toolkit 3.6.0, you can resume pt-online-schema-change if it was interrupted. This blog describes the prerequisites and usage of the new –resume option. To restart the job, you need to know where it failed. This is why the first option you must use is –history. It instructs pt-online-schema-change to store its progress in […]

What’s New in Percona Toolkit 3.6.0

Percona Toolkit 3.6.0 has been released on June 12, 2024. The most important updates in this version are: The possibility to resume pt-online-schema-change if it is interrupted. eu-stack support in pt-pmp that significantly improves this tool’s performance and decreases the load it causes on production servers. New tool pt-eustack-resolver Packages for Ubuntu 24.04 (Noble Numbat) […]

What’s New in Percona Toolkit 3.5.6

Percona Toolkit 3.5.6 was released on December 21, 2023. This blog post covers the main changes in this release. New tool: pt-galera-log-explainer We continue adding more instruments for the Support teams. pt-galera-log-explainer was written by my Percona Support colleague Yoann La Cancellera. pt-galera-log-explainer filters, aggregates, and summarizes multiple Galera library logs together. The purpose of […]

Using CLONE INSTANCE With DATA DIRECTORY on Replicas With Data

This blog post discusses using the  CLONE INSTANCE  command with the safety option  DATA DIRECTORY  when you do not have enough disk space to store two datasets. In my previous blog post on the CLONE INSTANCE  command, The MySQL Clone Plugin Is Not Your Backup, I mentioned that using the option DATA DIRECTORY  helps to avoid situations where you need to […]

What’s New in Percona Toolkit 3.5.5

Percona Toolkit 3.5.5 was released on October 3, 2023. This blog post covers the main changes in this release. pt-online-schema-change improvements After nibble hook This was contributed by Marcelo HP Ferreira at https://github.com/percona/percona-toolkit/pull/645. The feature allows you to define a custom plugin that will be triggered after copying each nibble. Here are a few examples […]

The MySQL Clone Plugin Is Not Your Backup

This blog post discusses the limitations of the MySQL Clone plugin. The MySQL clone plugin significantly simplifies the process of replica provisioning. All you need to do is: Ensure that the source server has binary logs enabled Grant appropriate permissions Execute the CLONE INSTANCE  command on the recipient This works extremely easily when you provision a […]

How to Benchmark Replication Performance in MySQL

In this blog, I will cover important aspects which you need to test when benchmarking replication setup. MySQL has great tools that could be used to test its performance. They include: sysbench – https://github.com/akopytov/sysbench BMK-kit – http://dimitrik.free.fr/blog/posts/mysql-perf-bmk-kit.html mysqlslap – https://dev.mysql.com/doc/refman/8.0/en/mysqlslap.html LinkBench – https://github.com/facebookarchive/linkbench I will not describe how to use them here, as you can […]

Migrating to utf8mb4: Things to Consider

The utf8mb4 character set is the new default as of MySQL 8.0, and this change neither affects existing data nor forces any upgrades. Migration to utf8mb4 has many advantages including: It can store more symbols, including emojis It has new collations for Asian languages It is faster than utf8mb3 Still, you may wonder how migration […]

Percona Support Team New Year Greetings!

In Percona Support we spend a few hours per week doing Labs: short collective projects, not directly related to the tickets. One of our last labs was about to get ready for the winter holiday season which means preparing the tree and decorating it. To do it we used our favorite tools: MySQL, and ASCII […]

Q & A on Webinar “MySQL Performance for DevOps”

First I want to thank everyone who attended my November 16, 2021 webinar “MySQL Performance for DevOps“. 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: Hi! We have troubles with DELETE queries. We have to […]

Q&A on the Webinar “Introduction to MySQL Query Tuning for Dev[Op]s”

First, I want to thank everyone who attended my November 9, 2021 webinar “Introduction to MySQL Query Tuning for Dev[Op]s“. Recording and slides are available on our webinars page. Here are answers to the questions from participants which I was not able to provide during the webinar due to a technical issue we experienced at […]