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

Peter Zaitsev
Peter managed the High Performance Group within MySQL until 2006, when he founded Percona. Peter has a Master's Degree in Computer Science and is an expert in database kernels, computer hardware, and application scaling.

Meet Percona Team at OSCON

Yes, We will be at OSCON next week. I will be talking about Optimizing MySQL Configuration and host a BOF on MySQL Sharding Replication and Clustering if you’re interested in any of these technologies please come by and share your story. I would love to see both users and technology vendors working in this field. […]

MySQL Upgrade Webinar Questions Followup

I did a Webinar about MySQL Upgrade – Best Practices Yesterday and there were some questions we could not answer during Webinar, following Jay’s Lead I decided to post them as a Blog Post. Q: Can you go directly MySQL 5.0 to 5.5 for MyISAM tables? MyISAM have not been getting any significant development since […]

ALTER TABLE: Creating Index by Sort and Buffer Pool Size

Today I was looking at the ALTER TABLE performance with fast index creation and without it with different buffer pool sizes. Results are pretty interesting. I used modified Sysbench table for these tests because original table as initially created only has index on column K which initially contains only zeros, which means index is very […]

pt-online-schema-change and default values

When I’m doing conventional ALTER TABLE in MySQL I can ignore default value and it will be assigned based on the column type. For example this alter table sbtest add column v varchar(100) not null would work even though we do not specify default value. MySQL will assign empty string as default default value for […]

Upgrading MySQL: Best Practices webinar, June 27th

Upgrading MySQL is boring topic, upgrading MySQL is something we would rather to be done with and get benefits from new cool features or be done with bugs and limitations which haunted us for years. Yet if you’re not careful performing MySQL upgrade you can get advantage of multiple opportunities of downtime and data loss, […]

Using innodb_sys_tables and innodb_sys_indexes

I was playing with Percona Server today and found fast_index_creation does not work quite exactly like described in the manual. The point I’m looking to make though it would be very hard to catch this problem without additional information_schema tables we added in Percona Server. I was doing simple ALTER TABLE such as: “alter table […]

Percona at SELF

There is a great conference – SELF (South East Linux Fest) taking place in June 8-9 in Charlotte,NC This conference has a great lineup for MySQL with 2 tracks on Friday dedicated to it. There are many great speakers both from Oracle and community on the list. From Percona I will speak about Optimizing MySQL […]

Training in London next week

I’m going to deliver MySQL Training next week (May 21-24) in London. This is a rare opportunity as I do not personally deliver a lot of Training, especially outside of US. There are still some places left if you want to sign up. You will also get a signed copy of High Performance MySQL 3rd […]

Load management Techniques for MySQL

One of the very frequent cases with performance problems with MySQL is what they happen every so often or certain times. Investigating them we find out what the cause is some batch jobs, reports and other non response time critical activities are overloading the system causing user experience to degrade. The first thing you need […]

Joining many tables in MySQL – optimizer_search_depth

Working on customer case today I ran into interesting problem – query joining about 20 tables (thank you ORM by joining all tables connected with foreign keys just in case) which would take 5 seconds even though in the read less than 1000 rows and doing it completely in memory. The plan optimizer picked was […]

Community events around Percona Live MySQL Conference and Expo 2012

We’re very pleased with community support for Percona Live MySQL Conference and Expo. We’ve got wonderful speakers providing content of phenomenal session lineup for the conference this year. We have community helping by spreading the world, about conference, picking talks and all king of other wonderful contributions. We also have series of events organized by […]

How MySQL FLUSH TABLES WITH READ LOCK works w/ Innodb Tables

Many backup tools including Percona Xtrabackup, MyLVMBackup, and others use FLUSH TABLES WITH READ LOCK to temporary make MySQL read-only. In many cases, the period for which server has to be made read-only is very short, just a few seconds, yet the impact of FLUSH TABLES WITH READ LOCK can be quite large because of […]

Speaking at POSSCON

I’m speaking at POSSCON in Columbia,SC next week (March 28). My talk will be about Open Source software Percona Produces – Percona Server, Percona Xtrabackup, Percona Toolkit, Percona XtraDB Cluster. If you want to get a birds eye view about Open Source software Percona has created this is a great talk to attend. We’re also […]

Best kept MySQLDump Secret

Many people use mysqldump –single-transaction to get consistent backup for their Innodb tables without making database read only. In most cases it works, but did you know there are some cases when you can get table entirely missing from the backup if you use this technique ? The problem comes from the fact how MySQL’s […]

MySQL Meetups in North Carolina this week

A quick reminder. I’m speaking on two MySQL meetups in North Carolina this week. Tuesday,Feb 21 on Raleigh MySQL/PHP Meetup and when Wednesday, Feb 22 on Charlotte Queen City PHP Note the last meetup date has changed, it was originally planned for February 23 but had to be rescheduled due to conflicts.

Can we improve MySQL variable handling ?

MySQL Settings (also known as Server Variables) have interesting property. When you set variable in running server this change is not persisted in any way and server will be back to old value upon restart. MySQL also does not have option to re-read config file without restarting as some other software so approach to change […]

Troubleshooting MySQL Upgrade Performance Regressions

So lets say you upgraded from MySQL 5.1 to Percona Server 5.5 and instead of expected performance improvement you see your performance being worse. What should you do ? First if you followed MySQL upgrade best practices such as testing your workload with pt-upgrade the chances of this happening are rather slim. But lets assume […]

Speaking at MySQL Meetup in Charlotte,NC

February is going to be a busy meetup month for me. In addition to speaking in Raleigh I will visit Charlotte to speak at Meetup out there on February 23rd. Last year I visited Charlotte meetup was in the great place and we had great food and great crowd of people showing up. I will […]

Speaking at MySQL Meetup in Raleigh,NC

I’ll be presenting at MySQL Meetup in Raleigh,NC February 21,2012. The talk with be about Optimizing MySQL Configuration which I believe is a great topic for my first talk at this meetup group as it covers something every MySQL user has to deal with, also being something both beginner and advanced MySQL Users can learn […]