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

Manjot Singh
Manjot Singh is an Architect with Percona in California. He loves to learn about new technologies and apply them to real world problems. Manjot is a veteran of startup and Fortune 50 enterprise companies alike with a few years spent in government, education, and hospital IT.

The Ultimate Guide to MySQL Partitions

This blog was originally published in July 2017 and was updated in August 2023. It’s a pretty common question around here, so let’s see what we can do about that. So, What is MySQL Partitioning? Partitioning is a way in which a database (MySQL in this case) splits its actual data down into separate tables […]

Always Verify Examples When Comparing DB Products (PostgreSQL and MySQL)

In this blog post, I’ll look at a comparison of PostgreSQL and MySQL. I came across a post from Hans-Juergen Schoenig, a Postgres consultant at Cybertec. In it, he dismissed MySQL and showed Postgres as better. While his post ignores most of the reasons why MySQL is better, I will focus on where his post is less than […]

How Life360 Used ProxySQL to Lower Its Database Load

In this blog post, we’ll look at how to use ProxySQL to help the database load by handling PINGs. I’ve blogged before about one of our regular clients, Life360. One of the issues they recently had was the PING command taking about 30%-40% of total queries per second across their database infrastructure. This is a non-trivial […]

What is innodb_autoinc_lock_mode?

I was recently discussing innodb_autoinc_lock_mode with some colleagues to address issues at a company I was working with. innodb_autoinc_lock_mode This variable defines the lock mode to use for generating auto-increment values. The permissible values are 0, 1 or 2 (for “traditional”, “consecutive” or “interleaved” lock mode, respectively). In most cases, this variable is set to […]

Where Do I Put ProxySQL?

In this blog post, we’ll look at how to deploy ProxySQL. ProxySQL is a high-performance proxy, currently for MySQL and its forks (like Percona Server for MySQL and MariaDB). It acts as an intermediary for client requests seeking resources from the database. It was created for DBAs by René Cannaò, as a means of solving […]

Backups and Disaster Recovery

In this post, we’ll look at strategies for backups and disaster recovery. Note: I am giving a talk on Backups and Disaster Recovery Best Practices on July 27th. Register Now When discussing disaster recovery, it’s important to take your business’ continuity plan into consideration. Backup and recovery processes are a critical part of any application […]

MySQL Encryption at Rest – Part 2 (InnoDB)

Welcome to Part 2 in a series of blog posts on MySQL encryption at rest. This post covers InnoDB tablespace encryption. At Percona, we work with a number of clients that require strong security measures for PCI, HIPAA and PHI compliance, where data managed by MySQL needs to be encrypted “at rest.” As with all […]

MySQL Encryption at Rest – Part 1 (LUKS)

In this first of a series of blog posts, we’ll look at MySQL encryption at rest. At Percona, we work with a number of clients that require strong security measures for PCI, HIPAA and PHI compliance, where data managed by MySQL needs to be encrypted “at rest.” As with all things open source, there several options […]

Monitoring Databases: A Product Comparison

In this blog post, I will discuss the solutions for monitoring databases (which includes alerting) I have worked with and recommended in the past to my clients. This survey will mostly focus on MySQL solutions.  One of the most common issues I come across when working with clients is monitoring and alerting. Many times, companies […]

MySQL, –i-am-a-dummy!

In this blog post, we’ll look at how “operator error” can cause serious problems (like the one we saw last week with AWS), and how to avoid them in MySQL using --i-am-a-dummy. Recently, AWS had some serious downtime in their East region, which they explained as the consequence of a bad deployment. It seems like […]

Elasticsearch Ransomware: Open Source Database Security Part 2

In this blog post, we’ll look at a new Elasticsearch ransomware outbreak and what you can do to prevent it happening to you. Mere weeks after reports of MongoDB servers getting hacked and infected with ransomware, Elasticsearch clusters are experiencing the same difficulties. David Murphy’s blog discussed the situation and the solution for MongoDB servers. In this […]

Rescuing a crashed pt-online-schema-change with pt-archiver

This article discusses how to salvage a crashed pt-online-schema-change by leveraging pt-archiver and executing queries to ensure that the data gets accurately migrated. I will show you how to continue the data copy process, and how to safely close out the pt-online-schema-change via manual operations such as RENAME TABLE and DROP TRIGGER commands. The normal process to […]

Galera warning “last inactive check”

In this post, we’ll discuss the Galera warning “last inactive check” and what it means. Problem I’ve been working with Percona XtraDB Cluster quite a bit recently, and have been investigating various warnings. I came across this one today: [Warning] WSREP: last inactive check more than PT1.5S ago (PT1.51811S), skipping check This warning is related […]