Exploring MySQL on Kubernetes with Minkube
In this blog post, I will show how to install the MySQL-compatible Percona XtraDB Cluster (PXC) Operator on Minikube as well as perform some basic actions. I am by no means a Kubernetes expert and...
View ArticleParallel Commits for Transactions Using postgres_fdw on PostgreSQL 15
Consuming data from a remote foreign database into our local database just like another local table is a great feature that adds an excellent level of flexibility to the design of a database solution....
View ArticlePostgreSQL for MySQL DBAs Episode 6 – Explaining EXPLAIN (And an Answer to a...
The differences between MySQL and PostgreSQL are often trivial but occasionally there are stark differences. A MySQL DBA wanting to optimize a query on a PostgreSQL server will hopefully have some...
View ArticlePostgreSQL for MySQL DBAs Episode 7: Vacuuming Tables
Experienced MySQL DBAs exploring PostgreSQL are often shocked to learn that they will need to vacuum their tables. This is not using a Hoover brand-like device or letting a Roomba-like robot loose on...
View ArticlePercona XtraBackup 8.0.29 and INSTANT ADD/DROP Columns
Oracle’s MySQL 8.0.29 release extended the support for ALTER TABLE … ALGORITHM=INSTANT to 1) allow users to instantly add columns in any position of the table, and 2) instantly drop columns. As part of...
View ArticleHow to Resolve “Error Reading Relay Log Event” After Relay Log Corruption
In this blog, I explain how to recover from a replication failure caused by a corrupted relay log file. MySQL replica stores data received from its source binary log in the relay log file. This file...
View ArticlePreventing Stale Reads on Percona XtraDB Cluster by Enforcing Causality...
When we run a SELECT in a replica server and it returns a different result to the one we would have obtained had we queried the source server instead, due to changes in the dataset that have not yet...
View ArticleA Quick Peek At MySQL 8.0.30
MySQL 8.0 is now over four years old and Oracle released the latest quarterly offering today with MySQL 8.0.30, which comes with lots of bug fixes and some interesting additions. This is my take on...
View ArticlePostgreSQL for MySQL DBAs Episode 8: Materialized Views
Episode 8 in the PostgreSQL for MySQL DBAs series covers materialized views. MySQL has had views for many years and they are very useful, but it has never had materialized views. Those who use...
View ArticleHow 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 –...
View ArticleHow to Reclaim Disk Space in Percona Server for MongoDB
Compaction in Percona Server for MongoDB (PSMDB) There are two ways to reclaim disk space in Percona Server for MongoDB (PSMDB): run compact on nodes or resync the node. In this blog, we will see the...
View ArticleTales From the MongoDB Field: When stepDown() Goes Wrong
We get to see and troubleshoot a lot of different problems at Percona. Here’s the latest one that got me scratching my head for a while recently. The scenario We have a sharded cluster environment...
View ArticleIntroducing Performance Improvement of Window Functions in PostgreSQL 15
When working with databases, there are always some projects oriented to performing analytics and reporting tasks over the information stored in the database. Usually, these tasks leverage window...
View ArticleAn Illustration of PostgreSQL Bloat
I have been working with Postgres now for many years, most recently as a consultant at Percona for companies with new implementations of Postgres as a result of migrating from Oracle or some other...
View ArticleMySQL 8.0 Dynamic Redo Log Sizing
This blog post will discuss the newest feature available in MySQL 8.0.30: dynamic redo log sizing. After the InnoDB buffer pool size, we can say that having a proper size for the redo logs is crucial...
View ArticleBuilding Percona Server for MySQL 8.0 with RocksDB Storage Engine on macOS
In Percona Server for MySQL 8.0.29-21, we added one more patch that helps us to build server code on macOS. To be precise here, we still could do this even before this patch but only partially. Now it...
View ArticleMyRocks Use Case: Big Dataset
One of the questions I am often asked is in what cases I would prefer MyRocks over InnoDB. We have covered MyRocks in our blog previously: MyRocks Performance – Percona Database Performance Blog Saving...
View ArticleFTWRL on MyDumper Removed
The title is not entirely true, but ‘FTWRL on MyDumper is not needed anymore for consistent backups’ was a long title. One more time, I wanted to share a new feature in MyDumper. This is related to an...
View ArticlePostgreSQL For MySQL DBAs Episode 9: References
Thank you for the many kind responses to this series. There are many out there who have MySQL experience and are seeking to expand into PostgreSQL for reasons ranging from simple curiosity to...
View ArticleSeven Ways To Reduce MySQL Costs in the Cloud
With the economy slowing down and inflation raging in many parts of the world, your organization will love you if you find ways to reduce the costs of running their MySQL databases. This is especially...
View Article