Planet for the MySQL Community

A blog aggregator for the MySQL Community/Ecosystem

A description of what this website tries to achieve is in the Planet MySQL Community - Requirements RFC.

And a clarification about the MySQL Community/Ecosystem: it is not limited the users of the MySQL Database. In the current context, it also includes people interested in MySQL Variants including MariaDB Server, Percona Server, Galera, Amazon RDS and Aurora, Google Cloud SQL for MySQL, and Azure and Alibaba flavor(s) of MySQL/MariaDB/Percona Servers.

Wednesday, 24. July 2024

Ola Money achieved operational excellence, disaster recovery site in Asia Pacific (Hyderabad) Region, and up to 60% cost savings using Amazon Aurora (from AWS Database Blog)

Ola Money is a financial service provided by Ola Financial Services (OFS), which is part of the Ola group of companies. In this post, we share the modernization journey of Ola Money’s MySQL workloads using Amazon Aurora, a relational database management system built for the cloud with MySQL and PostgreSQL compatibility that gives the performance and availability of commercial-grade databases at one [...]

Make It Faster: Improving MySQL Write Performance for Tungsten Cluster Replicas (from Continuent Blog)

In this blog post we explore various options for performance tuning MySQL server for better replica replication performance.Tags: cctrlcomposite clusterHigh AvailabilityMySQL Performance Tuning [...]

Tuesday, 23. July 2024

Managing Data Migrations and other Imperative Changes (from Skeema Blog)

pSkeema uses a declarative design for schema management, representing the desired state of database objects as a collection of codeCREATE/code statements. This model works extremely well for DDL, but it doesn’t directly capture imperative changes, such as row data migrations. In this post, we’ll cover the underlying concepts and show a few approaches for managing imperative changes when [...]

SQLyog 13.3 Release notes: (from Webyog Blog)

pThis release of SQLyog addresses new features and some bug fixes related to MariaDB. Features: Bugs: Trial Download:  Trial Download Purchase: Purchase Update Download for Current Customers:  Update Download for […]/p pThe post SQLyog 13.3 Release notes: appeared first on Webyog./p [...]

How we improved availability through iterative simplification (from The GitHub Blog)

pSolving and staying ahead of problems when scaling up a system of GitHub’s size is a delicate process. Here's a look at some of the tools in GitHub's toolbox, and how we’ve used them to solve problems./p pThe post How we improved availability through iterative simplification appeared first on The GitHub Blog./p [...]

RegEx Backreferences in MySQL (from The Oracle MySQL Blog)

Regular expressions are a powerful tool for developers. In this post we will demonstrate how to use regular expressions backreferences in MySQL. [...]

Export Amazon RDS for MySQL and MariaDB databases to Amazon S3 using a custom API (from AWS Database Blog)

As customers are migrating to the AWS Cloud to take advantage of managed database services such as Amazon RDS for MySQL, Amazon RDS for MariaDB, and Amazon Aurora MySQL-Compatible Edition, they also look to automate these administrative tasks. This post shows how a DBA or other user with access to a custom API can make MySQL and MariaDB backup requests. It uses Infrastructure as Code (IaC) with the [...]

Enhance database performance with Amazon RDS dedicated log volumes (from AWS Database Blog)

For those seeking to achieve consistent database transaction performance, Amazon RDS has introduced a new feature: dedicated log volume (DLV). This feature is an additional storage volume specifically for database transaction logs. In this post, we examine common DLV performance benefits, use cases, monitoring capabilities, and the cost of deployment. [...]

Maximizing TiDB Cloud Security and Usability with OAuth 2.0 Authorization Code Flow (from PingCAP Blog)

pAt PingCAP, security is one of our core values. We always strive to support the latest security standards to ensure your high-scale, mission-critical applications are always secure. By integrating the OAuth 2.0 authorization code flow, TiDB Cloud enhances both security and usability, providing you with robust, secure access to your cloud resources. In today’s cloud […]/p pThe post Maximizing [...]

MySQL: Upgrading old MySQL instances (from Die wunderbare Welt von Isotopp)

blockquote pDear Kris,/p pWe have a number of old MySQL instances, version 5.5 and 5.6. We want to upgrade them to a current version of MySQL. The databases are between 0.5 TB to 8 TB in size./p pUnfortunately, using rsync on a stopped MySQL instance is not an option because the versions are too different, and the new version seems unable to read the binary data. I could use a dump (multi-threaded) [...]

The State of Online Schema Migrations in MySQL (from PlanetScale Blog)

Learn about the options for running non-blocking schema changes natively to MySQL, using Vitess, or other tools [...]

Monday, 22. July 2024

Searching for regressions in RocksDB with db_bench: part 2 (from Small Datum)

pIn a recent post I shared results for RocksDB performance tests using versions from 6.0 through 9.0 and 3 different types of servers (small, medium, big). While there were few regressions over time, there is one regression that arrived in version 8.6, bug 12038, and the workarounds are one of:br/pulliuse O_DIRECT for compaction reads/liliset compaction_readahead_size to be <= max_sectors_kb for [...]

Searching for regressions in RocksDB with db_bench (from Small Datum)

pI used db_bench to check for performance regressions in RocksDB using leveled compaction and three different servers. A future post will have results for universal compaction. A recent report from me about db_bench on a large server is here./pptl;dr/pp/pulliif you use buffered IO for compaction (not O_DIRECT) then bug 12038 is an issue starting in RocksDB 8.6. The workaround is to set compaction_r [...]

MyRocks vs InnoDB on cached sysbench: revised (from Small Datum)

pA few weeks ago I shared results for sysbench with InnoDB and MyRocks on a variety of servers. The worst-case for MyRocks occurred on a 2-socket server with the write microbenchmarks. After some performance debugging I learned that changing the CPU frequency governor from schedutil to performance increased QPS by ~2X for the worst cases (see here) with MyRocks. Note that for Ubuntu 22.04 the [...]

Online Schema Changes on Tables with Foreign Keys in MySQL (from Percona Database Blog)

♦pt-online-schema-change is an amazing tool for assisting in table modifications in cases where ONLINE ALTER is not an option. But if you have foreign keys, this could be an interesting and important read for you. Tables with foreign keys are always complicated, and they have to be handled with care. The use case I am […] [...]

MyRocks vs InnoDB on cached sysbench (from Small Datum)

pThis post compares MyRocks and InnoDB using sysbench with a cached database. The first goal is to understand the differences in CPU overhead between MyRocks and InnoDB. The second goal is to identify things that can be improved in MyRocks./pptl;dr/pp/pulliThere are small regressions from MyRocks 5.6 to 8.0, usually <= 10%. I assume most of this is from changes in upstream MySQL that are in code [...]

Optimizing aggregation in the Vitess query planner (from PlanetScale Blog)

The Vitess query planner takes multiple passes over a query plan to optimize it as much as possible before execution. A recent tricky bug report led to an improvement in how the optimizer functions. [...]

An Interesting Optimization (from Vitess)

Introduction # I recently encountered an intriguing bug. A user reported that their query was causing vtgate to fetch a large amount of data, sometimes resulting in an Out Of Memory (OOM) error. For a deeper understanding of grouping and aggregations on Vitess, I recommend reading this prior blog post. The Query # The problematic query was: selectsum(user.type)fromuserjoinuser_extraonuser.team_id=u [...]

Friday, 19. July 2024

Introducing Curated Solutions for Databases on AWS (from AWS Database Blog)

Solutions on AWS help you simplify cloud adoption and accelerate time-to-value by delivering proven, ready-to-deploy architectures tailored for industry, cross-industry, and technology use cases. We have recently added a number of Guidance topics to Solutions for Databases. In this post, we provide a quick reference to the newest Guidance and how it can be used to address your business needs. [...]

MySQL 8.0.38 vs cached Sysbench on a medium server (from Small Datum)

pThis has benchmark results for MySQL 8.0.38 and a few other 8.0 releases using Sysbench with a cached database on a medium server. By small, medium or large server I mean < 10 cores for small, 10 to 19 cores for medium, 20+ cores for large. Results from the Insert Benchmark in the same setup are here./pptl;dr/pp/pulliPerformance for many range scans might be about 10% lower in 8.0.38 than in 8. [...]

A Quick Introduction to JavaScript Stored Programs in MySQL (from The Oracle MySQL Blog)

Recently MySQL added the ability to write Stored Programs in JavaScript.  This allows developers to leverage JavaScript capabilities for complex data processing and business logic within the database server. We think this is really cool. Here’s why. [...]

MySQL 9.0 Includes a New Option for Explaining Queries (from Percona Database Blog)

♦MySQL 9.0 is an Innovation Release, but as you may have read in my Quick Peek, I found little innovation. However, one new item caught my eye, and it could be a way to track query performance. MySQL 9.0 EXPLAIN enhancement Here is the syntax that will be referenced in the post. {EXPLAIN | DESCRIBE […] [...]

How to Monitor Valkey/Redis with Percona Monitoring and Management (from Percona Database Blog)

♦In this blog post, we will show you how to add external exporters to Percona Monitoring and Management (PMM) and monitor various services. Our focus will be on Valkey/Redis, but the principles apply to other technologies as well. PMM uses VictoriaMetrics, which is compatible with Prometheus. Prometheus has numerous exporters that you can use.  When […] [...]

What on Earth is a Split-Brain Scenario in a MySQL Database Cluster? (from Continuent Blog)

In this blog post we will define what a split-brain scenario means in a MySQL database cluster, and then explore how a Tungsten MySQL database cluster reacts to a split-brain situation.Tags: FailsafeHigh Availabilitygeo-distributedMySQLSplit-Brain [...]

Using Debezium to Capture Changes from a Dolt Database (from DoltHub Blog)

A few weeks ago, we announced the first release of support for Dolt-to-MySQL replication. Dolt now supports replicating to a MySQL database… [...]

Thursday, 18. July 2024

New open-source Advanced MYSQL ODBC Driver now available for Amazon Aurora and RDS (from AWS What's New)

pThe Amazon Web Services (AWS) ODBC Driver for MYSQL is now generally available for use with Amazon RDS and Amazon Aurora MySQL-compatible edition database clusters. This database driver provides support for faster switchover and failover times, and authentication with AWS Secrets Manager or AWS Identity and Access Management (IAM).br br The Amazon Web Services (AWS) ODBC Driver for MYSQL is a stan [...]

Amazon Aurora zero-ETL integration with Amazon Redshift now available in 8 additional regions (from AWS What's New)

pAmazon Aurora MySQL zero-ETL integration with Amazon Redshift is now supported in 8 additional regions, enabling near real-time analytics and machine learning (ML) using Amazon Redshift. With this launch, Amazon Aurora MySQL zero-ETL integration with Amazon Redshift is supported in all AWS commercial regions where Amazon Redshift is br Zero-ETL integration helps you derive holistic in [...]

How to Have a Single MySQL User Account From Specific Hosts (from Percona Database Blog)

♦In this article, we will demonstrate how to have a single MySQL database user account that can connect from specific hosts. We would usually implement it by creating separate user accounts with the same username but different hosts/IPs like <USER>@<HOST1>, <USER>@<HOST2> …. <USER>@<HOSTn>. Then, give those users the same grants(privileges/roles) and [...]

Using RegEx Subexpressions in MySQL (from The Oracle MySQL Blog)

Regular expressions are a powerful tool for developers. In this post we will demonstrate how to use regular expressions subexpressions in MySQL [...]

Wednesday, 17. July 2024

Make MyRocks 2X faster by changing the CPU frequency governor (from Small Datum)

pThank you for clicking on my of my better clickbait titles. Obviously this trick won't work everywhere but it does work on one of my home servers./pptl;dr/pp/pulliSwitching from the Ubuntu 22.04 Server default CPU frequency governor (schedutil) to the performance governor increases QPS by ~2X for many write-heavy microbenchmarks with MyRocks on one of my large home servers./liliThe problem is that [...]

MariaDB 10.4 on EL9 (Alma / Rocky / RedHat 9) (from Shattered Silicon OSDB Blog)

pHow to quickly install MariaDB 10.4 on Alma / Rocky / RedHat EL9/p pThe post MariaDB 10.4 on EL9 (Alma / Rocky / RedHat 9) appeared first on Shattered Silicon./p [...]

MariaDB Server GitHub branches: Moving to “main” (from MariaDB Foundation Blog)

pOn the 3rd of July, two weeks ago, I created a poll to ask about the future of feature development branches in MariaDB Server. … /p pContinue reading \"MariaDB Server GitHub branches: Moving to “main”\"/p pThe post MariaDB Server GitHub branches: Moving to “main” appeared first on [...]

MariaDB Java Connector 3.4.1 now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of the MariaDB Connector/Java 3.4.1 release. Download Now Release Notes and Changelogs … Continued [...]

Ultimate Guide to Improving MySQL Query Performance (from Percona Database Blog)

♦MySQL is certainly a powerful open source database management system, but even the most robust engine struggles when queries take an eternity to execute. For DBAs and developers, improving MySQL query performance is an ongoing goal. Efficient query performance is crucial for ensuring the smooth operation and optimal user experience of applications powered by MySQL […] [...]

Five Ways to Reduce Cloud Database Costs without Sacrificing Performance (from PingCAP Blog)

pShifting to the cloud is great for getting products to market faster, but it can be a double-edged sword. The ease of spinning up new cloud resources is great for innovation, but the downside is that it can quickly lead to large cloud bills. That’s especially true for cloud databases. When you don’t have to […]/p pThe post Five Ways to Reduce Cloud Database Costs without Sacrific [...]

Tuesday, 16. July 2024

A Different RegEx Solution in MySQL (from The Oracle MySQL Blog)

Regular expressions are a powerful tool for developers. In this post we re-examine a solution from a previous post to see if we can streamline the query and use a pure regex solution. [...]

No MySQL 9.x Innovation Releases from Percona (from Percona Database Blog)

♦On July 1st, 2024, Oracle launched MySQL 9.0.0, the first release in the 9.x series. This release and the following six versions (9.1.0 to 9.6.0) are designated as “Innovation Releases.” These releases are characterized by their short support lifecycles, lasting only one quarter, and their focus is on introducing new features and innovations, which may […] [...]

Latest MySQL release is underwhelming, say some DB experts (from The Register)

Oracle's priorities may lie elsewhere but it is unfair to say all innovation can go in community edition, reckons analyst pUpdated  The latest release of MySQL has underwhelmed some commentators who fear Oracle — the custodian of the open source database — may have other priorities.…/p [...]

Get Your HeatWave MySQL Data On-Premises with Replication (from MySQL expert Diary)

pThis article guides you through setting up replication between a HeatWave MySQL instance (source) and an on-premise standalone MySQL instance (replica).br It highlights key steps like creating a replication user, securing the connection, and using MySQL Shell utilities for data transfer./p The post Get Your HeatWave MySQL Data On-Premises with Replication first appeared on - Diary of a [...]

Timeline for Database on Kubernetes (from Percona Community Blog)

The Evolution Since its inception in June 2014, Kubernetes has dramatically transformed container orchestration, revolutionizing the management and scaling of applications. To mark its tenth anniversary, the Data on Kubernetes Community (DoKC) released an infographic showcasing key milestones and community contributions to the evolution of operators for managing stateful applications. This project [...]

Postgres vs MySQL Sysbench Latency (from DoltHub Blog)

What open source database is faster? Postgres or MySQL? It's surprisingly hard to find latency benchmark comparisons between these two… [...]

Monday, 15. July 2024

MySQL 8.0.38 vs the Insert Benchmark on a medium server (from Small Datum)

pThis has benchmark results for MySQL 8.0.38 and a few other 8.0 releases using the Insert Benchmark and a medium server. By small, medium or large server I mean < 10 cores for small, 10 to 19 cores for medium, 20+ cores for large. A result for Postgres 17 on the same server is here./pptl;dr/pp/pulliPerformance for the write-heavy (l.i0, l.i1, l.i2) and point-query tests is ~5% worse after 8.0.2 [...]

In-database vector store in Heatwave: Industry’s first automated solution (from The Oracle MySQL Blog)

In-database vector store in Heatwave: Industry’s first automated solution [...]

Amazon RDS for MariaDB supports Long-Term Support version 11.4 in Amazon RDS Database Preview Environment (from AWS What's New)

pAmazon RDS for MariaDB now supports version 11.4 in the Amazon RDS Database Preview Environment, allowing you to evaluate the latest Long-Term Support Release on Amazon RDS for MariaDB. You can deploy MariaDB 11.4 in the Amazon RDS Database Preview Environment that has the benefits of a fully managed database, making it simpler to set up, operate, and monitor br MariaDB 11.4 is the la [...]

Using pt-online-schema-change for Purging Rows and Reclaiming Disk Space in a Single Operation (from Percona Database Blog)

♦You probably missed the news, but… PT-1751: Adds –where param to pt-online-schema-change This brings the possibility to perform what I would call an “inverted purge” because you are not actually purging rows from your multi-terabyte table, but rather, you copy the small percentage of rows you want to keep to a new table and then […] [...]

Azure Database for MySQL - June 2024 updates and latest feature roadmap (from Azure for MySQL Blog)

pWe're excited to share a summary of the Azure Database for MySQL - Flexible Server announcements from last month, as well as the latest roadmap of upcoming features!/p p /p July 2024 Live webinar p /p pThese updates and the latest roadmap are also covered in our Monthly Live Webinar on YouTube (Click here to subscribe to our YouTube channel!), which streams the second Wednesday of every [...]

HeatWave GenAI for e-Commerce Applications (from The Oracle MySQL Blog)

Oracle HeatWave has announced a very exciting new feature – HeatWave GenAI which brings LLMs right to the database. Because the LLM is available right in the database developers can seamlessly apply GenAI capabilities to structured and unstructured data with just a simple SQL query. In this blog we review the e-commerce demo we published on Youtube and show how easily it was built. [...]

Percona Server for MySQL and Percona XtraBackup Now Available for ARM64 (from Percona Database Blog)

♦We’re excited to announce that both Percona Server for MySQL and Percona XtraBackup now support the ARM64 architecture on Red Hat Enterprise Linux (RHEL) 8/9 and Oracle Linux (OL) 8/9. The packages with the aarch64.rpm extension can be found on Percona Software Downloads. The aarch64.rpm file extension indicates that the RPM package is specifically built for the ARM64 architecture and intended [&# [...]

Using Keep-Alives to Ensure Long-Running MySQL & MariaDB Sessions Stay Connected (from Continuent Blog)

In this blog post, we will discuss how to use the Tungsten Connector keep-alive feature to ensure long-running MySQL & MariaDB/Percona Server client sessions stay connected in a Tungsten Cluster.Tags: Bridge modeConnectorHigh AvailabilityKeep-AliveLoad Balancingmysql proxySmartScaleTungsten Connector [...]

Sunday, 14. July 2024

MySQL Brazil Meetup 2024 – Informações do Evento e Agenda (from Another Boring Tech Blog)

pSalve a todos os nerds! O nosso meetup de MySQL de 2024 já tem uma data! Data: 05 de Outubro, Sábado, 2024 Horário: 9:00 AM – 5:30 PM (Horário de Brasilia) Local: Oracle do Brasil Sistemas, Rua Dr. José Áureo Bustamante 455, bl. 110, São Paulo, SP, BR, 04710-090 Teremos um dia inteiro com palestras.../p pO post MySQL Brazil Meetup 2024 – Informações do Evento e Agenda apareceu primeiro [...]

Friday, 12. July 2024

What do I need to know about the HeatWave maintenance window? (from The Oracle MySQL Blog)

HeatWave maintenance window [...]

Simple bash scripts to upload multiple directories of files to an Object Storage bucket for use with Oracle HeatWave Lakehouse (from The Oracle MySQL Blog)

By using the Oracle Command-Line Interface, you can easily upload your import files to Oracle Object Storage to be used with HeatWave Lakehouse or any other Oracle Cloud service. [...]

Using the Percona Audit Logging Plugin on MySQL Community 8.0.x (from Percona Database Blog)

♦At Percona Managed Services, we manage Percona MySQL, Community MySQL, and MariaDB. Sometimes, we might need to enable audit logging and share the logs for client MySQL Community 8.0.x servers. There are several ways to enable audit logs. One is to use the MySQL Enterprise audit logging plugin (, but it only supports the MySQL […] [...]

Thursday, 11. July 2024

Optimize data validation using AWS DMS validation-only tasks (from AWS Database Blog)

AWS DMS provides the capability to validate your data as you migrate from various supported sources to AWS. Data integrity and accuracy is one of key requirements we often hear about from our customers that determines a successful migration project. In this post, we delve deep into AWS DMS data validation feature. We explore its benefits, configurations, and use cases. [...]

Do Not Upgrade to Any Version of MySQL After 8.0.37 (from Percona Database Blog)

♦Warning! Recently, Jean-François Gagné opened a bug on #115517; unfortunately, the bug is now private. However, the bug looks quite serious. We at Percona have performed several tests and opened the issue PS-9306 to investigate the problem. In short, what happens is that if you create a large number of tables, like 10000, the […] [...]

More Regular Expressions in MySQL (from The Oracle MySQL Blog)

Regular expressions are a powerful tool for developers. In this post we take a look at some basic examples of how to use values returned from regular expression functions in other functions to manipulate our data. [...]

Wednesday, 10. July 2024

How to Manage MySQL Databases and Users from the Command Line (from RoseHosting Blog)

pMySQL is the most popular database server used by websites to store their important data. In addition to using phpMyAdmin ... /p pRead More/p pThe post How to Manage MySQL Databases and Users from the Command Line appeared first on RoseHosting./p [...]

Deploying MongoDB on Kubernetes with Percona Everest (from Percona Database Blog)

♦Percona Everest is the first open source platform designed for automated database provisioning and management. It supports multiple database technologies and can be hosted on any Kubernetes infrastructure, in the cloud or on-premises. It provides an easy-to-use web interface while leveraging the power of the Percona Operators behind the scenes to do all the heavy […] [...]

Use OCI GenAI, and MySQL HeatWave to interact with your WordPress content (from The Oracle MySQL Blog)

How to use OCI GenAI service to query data stored in MySQL using Retrieval Augmented Generation. [...]

Use OCI GenAI, and MySQL HeatWave to interact with your WordPress content (from lefred's blog)

MySQL HeatWave 9.0 was released under the banner of artificial intelligence. It includes a VECTOR datatype and can easily process and analyze vast amounts of proprietary unstructured documents in object storage, using HeatWave GenAI and Lakehouse. Oracle Cloud Infrastructure also provides a wonderful GenAI Service, and in this post, we will see how to use […] [...]

Dealing with large tables (from PlanetScale Blog)

Large databases often have a small number of very large tables that makes scaling difficult. How can you scale with these while keeping your database performant? This article covers three techniques. [...]

Tuesday, 09. July 2024

MariaDB Contribution Statistics, July 2024 (from MariaDB Foundation Blog)

pWe are half way through the year! Where has the time gone?! This means that is time to talk contributions statistics. The raw data used for this blog post can be found on the metrics GitHub repo. … /p pContinue reading \"MariaDB Contribution Statistics, July 2024\"/p pThe post MariaDB Contribution Statistics, July 2024 appeared first on [...]

A MySQL 9.0.0 branch with patches (from Laurynas Biveinis' blog)

p Recently I made public a branch of MySQL 8.4.0 with patches. Now that newer upstream versions have been released, I have rebased the branch on 9.0.0: patched-mysql-9.0.0. /p p I did not add any new patches, and dropped the LLVM compilation fix patch. Thus the current patch set improves AddressSanitizer support and includes several fixes/improvements for the clone plugin to support a second trans [...]

A MySQL 8.4.0 branch with patches (from Laurynas Biveinis' blog)

pWhile writing the previous post, I noticed that I didn't have a central location for the patches that I submitted to Oracle. Some were in local branches, some were .patch files lying around. So now I pushed a tree that has all those patches applied in a single place: patched-mysql-8.4.0, and I even added a README. This tree hopefully will make it easier to rebase on future Oracle releases. I had m [...]

Challenges and Risks of Cloud-Based Managed MySQL Data Services (from Continuent Blog)

Cloud-based managed MySQL data services have become popular choices for businesses. While these services offer advantages, they also come with a host of drawbacks that can impact performance, control, and costs. This post explores these key drawbacks in detail and compares those to Tungsten Clustering running in the cloud, also multi-cloud, hybrid-cloud and on-premises.Tags: MySQLriskschalleng [...]

MySQL Shell CLI Integration (from The Oracle MySQL Blog)

MySQL Shell offer many features to make life easier for DBAs and developers. In this post we discuss how to use MySQL Shell as part of system command-line integration or as party of a scripted process. [...]

Quoting differences between MySQL and PostgreSQL, and converting between them (from DoltHub Blog)

Introduction We're hard at work building Doltgres, a Postgres-compatible database with git-inspired version control features. Doltgres is… [...]

Monday, 08. July 2024

The journey to explain performance regressions in MySQL (from Small Datum)

pI have spent much time documenting performance regressions from new CPU overheads in MySQL. Soon I will be spending much time trying to explain the source of the regressions with perf, flamegraphs and more. This post is one step in the journey and it shows how performance changes from MySQL 5.6.35 through 8.0.37 using 5 different servers. Previous posts showed the impact of LTO and PGO./ppQuestion [...]

Sharding strategies: directory-based, range-based, and hash-based (from PlanetScale Blog)

Learn about the different types of sharding: directory-based, range-based, and hash-based plus some of the pros and cons of each. [...]

Primary keys in Data Warehouses (from Vettabase)

In my recent webinar Designing a schema for a data warehouse, I was asked a question that deserves a long answer. I recommended to use IDs generated directly in the data warehouse. In other words, even if you import customer data from a MySQL database and each customer has an ID, don’t import that ID in the data warehouse. The question I was asked is one of the simplest and yet smartest quest [...]

Bug hunting in MySQL with git bisect (from Marc Reilly)

pbr/ppTroubleshooting a database crash or regression can be a tedious task. Whether you have recently deployed new application changes, upgraded your database or "nothing has changed" ™ it can be tricky to corner why the database started behaving differently to how it has before./ppbrIn the case of a database crash or regression post upgrade, my usual first step in troubleshooting will be to take a [...]

Are Git Branches MVCC? (from DoltHub Blog)

Multiversion concurrency control (MVCC) is a technique relational databases use to avoid concurrent transactions blocking one another. This… [...]

Saturday, 06. July 2024

Storing EXPLAIN FORMAT=JSON INTO Variable for MySQL Query Optimization (from Mydbops Blog)

The world of databases is often a race against time. Users expect applications to respond instantaneously, and slow queries can throw a wrench into that expectation. But are slow queries always occurr [...]

Friday, 05. July 2024

THD::variables – ProxySQL to the rescue (from Szymon Skorupinski Blog)

This will be the quick one to give you an idea how you can workaround memory leaks coming from long-running sessions, in case you are using ProxySQL. Recently we have observed, that on some of our DBs we have memory area called memory/sql/THD::variables, which consumes majority of the memory – in some cases much more … Continue reading "THD::variables – ProxySQL to the rescue [...]

MySQL 8.4's explain_json_format_version (from Mydbops Blog)

In the ever-evolving world of databases and SQL, understanding the tools and parameters at our disposal is crucial for optimizing performance and ensuring clarity in our queries. One such important pa [...]

Dolt to MySQL Replication (from DoltHub Blog)

Introduction Dolt DB is the world's first, and only, version-controlled SQL database. Dolt is a drop-in replacement for MySQL, so any tools… [...]

Thursday, 04. July 2024

PHP and MySQL 9 (from The Oracle MySQL Blog)

Which PHP versions are compatible with MySQL 9.0? [...]

MySQL 9.0 – it’s time to abandon the weak authentication method (from The Oracle MySQL Blog)

The old mysql_native_password authentication method using SHA-1 is now gone with MySQL 9. [...]

Building and testing MySQL 8.0.38 / 8.4.1 / 9.0.0 on macOS (from Laurynas Biveinis' blog)

p Oracle has just released MySQL 8.0.38/8.4.1/9.0.0, so let's see how the Valgrind testing of the previous set of releases is going: /p pre[ 65%] innodb.bug33788578_rec_IV_set w2 [ fail ] Found warnings/errors in error log file! /pre p It only managed two thirds of a run (a code--big-test/code one) in a few weeks, which means that I either need a faster machine, or that Valgrind testi [...]

PHP and MySQL 9 (from lefred's blog)

As you can read in my previous post related to MySQL 9 and authentication, the old mysql_native_password plugin has been removed. In that post, I showed an example using PHP 7.2, the default version in OL8. If you are using PHP and you want to use MySQL 9, you must be using a more recent […] [...]

Why I keep choosing MariaDB (from MariaDB Foundation Blog)

pUsers of open source software don’t always share their stories, simply because they are satisfied. That’s why we were delighted to accept an offer from database expert Richard Bensley to share why he has repeatedly used MariaDB over the years.  … /p pContinue reading \"Why I keep choosing MariaDB\"/p pThe post Why I keep choosing MariaDB appeared first on [...]

What’s new in MySQL 9.0 (from InfoWorld)

pOracle celebrated the beginning of July with the general availability of three releases of its open source database, MySQL: MySQL 8.0.38, the first update of its long-term support (LTS) version, MySQL 8.4, and the first major version of its 9.x innovation release, MySQL 9.0./ppWhile the v8 releases are bug fixes and security releases only, MySQL 9.0 Innovation is a shiny new version with additi [...]

MySQL 9.0 – it’s time to abandon the weak authentication method (from lefred's blog)

With the latest MySQL Innovation Release, we decided that it was time to remove the remaining weak authentication plugin: mysql_native_password. We previously deprecated it and made it not default loaded in MySQL 8.4 LTS and, now, in 9.0 it’s gone! Reasons Oracle places significant attention on the security of all its products, and MySQL is […] [...]

MySQL: Plugin 'mysql_native_password' is not loaded (from Die wunderbare Welt von Isotopp)

pIn codelibera:#mysql/code a user has been running MySQL in a docker container with codemysql:latest/code. This container got automatically upgraded to MySQL 9.0.0, an innovation release./p pPart of the 9.0 release is the removal of the codemysql_native_password/code plugin, which has been deprecated since 8.0. The user now can no longer login to their database. They have no backup and no replica./ [...]

Advanced Data Load with MySQL Shell (from The Oracle MySQL Blog)

MySQL Shell offer many features to make life easier for DBAs and developers. In this post we discuss some of the options available to use when loading database dumps. [...]

Wednesday, 03. July 2024

Amazon RDS Snapshot Export to S3 now available in eight additional AWS regions (from AWS What's New)

pSnapshot Export to S3 for Amazon Aurora and Amazon RDS snapshots is now available in Asia Pacific (Hyderabad), Asia Pacific (Jakarta), Asia Pacific (Melbourne), Canada West (Calgary), Europe (Spain), Europe (Zurich), Israel (Tel Aviv), and Middle East (UAE) regions. Snapshot export to S3 exports snapshot data as Apache Parquet, an efficient open columnar storage format. Snapshot export to S3 allow [...]

Buffer pool performance parameters for Azure Database for MySQL (from Azure for MySQL Blog)

pInnoDB is a storage engine for the MySQL database management system. InnoDB manages a buffer pool, which is a dedicated storage zone that’s used to cache data and indexes within memory. Because the data remains readily available in memory, this approach significantly accelerates retrieval of frequently accessed information, easily surpassing the time required for disk-based retrieval. /p p&nb [...]

Amazon RDS now supports M6gd and R6gd database instances in the AWS GovCloud (US) Regions (from AWS What's New)

pAmazon Relational Database Service (Amazon RDS) for PostgreSQL, MySQL, and MariaDB now supports AWS Graviton2-based M6gd and R6gd database instances in the AWS GovCloud (US) br With this regional expansion, M6gd instances are now available for Amazon RDS for PostgreSQL, MySQL, and MariaDB in US East (Ohio, N. Virginia), US West (Oregon), Asia Pacific (Hong Kong, Hyderabad, Jakarta, Melb [...]

MariaDB Server GitHub branches: Have your say (from MariaDB Foundation Blog)

pMany countries in the world right now are hosting elections, in fact, my own country’s election is tomorrow. MariaDB Foundation is also asking for you to make one more vote on our own kind of referendum. … /p pContinue reading \"MariaDB Server GitHub branches: Have your say\"/p pThe post MariaDB Server GitHub branches: Have your say appeared first on [...]

MySQL 9.0 is out! Thank you for your contributions! (from The Oracle MySQL Blog)

MySQL is Open Source and accept contributions from the Community. This is the list of contributions accepted in the last releases. [...]

MySQL 9.0 is out! Thank you for your contributions! (from lefred's blog)

On July 1st, 3 new releases of MySQL came out. Indeed, we released the next 8.0 (8.0.38), the first update of the 8.4 LTS (8.4.1), and the very first 9.0 as Innovation Release. We now support 3 versions of the most popular Open Source database. With these releases, we also want to thank all the […] [...]

Why People Don't Use Dolt (from DoltHub Blog)

When you build a database from scratch, you hear a lot of reasons why potential customers choose not to use it. Dolt adds compelling Git… [...]

Tuesday, 02. July 2024

The impact of PGO for MySQL (from Small Datum)

pThis post explains the benefit from PGO (profile guided optimization) on MySQL. A previous post showed that LTO (link time optimization) reduces CPU (improves throughput) by about 5% for CPU-bound sysbench.brbrThe goals here are:br/pulliDetermine the impact of PGO/liliDetermine the impact of PGO + LTO/liliDetermine whether PGO binary that used sysbench to generate the profile is useful when runnin [...]

The impact of link time optimization for MySQL with sysbench (from Small Datum)

pThis post has results to show the benefit from using link time optimization for MySQL. That is enabled via the CMake option -DWITH_LTO=ON.brbrtl;dr/pp/pulliA typical improvement is ~5% more QPS from link time optimization/liliOn the small servers (PN53, SER4) the benefit from link-time optimization was larger for InnoDB than for MyRocks. On the medium server (C2D) the benefit was similar for MyRoc [...]

Effortlessly Build AI-Powered Q/A Apps Using HeatWave GenAI (from The Oracle MySQL Blog)

In this blog post, we explore how effortlessly you can harness the capabilities of HeatWave GenAI—including the Vector Store and RAG—to craft personalized AI-driven Question/Answering (Q/A) applications. These applications adeptly respond to user queries across diverse domains, leveraging customized documents ingested to HeatWave GenAI with vector store. Presented in this blog are two compelling ex [...]

Advanced Data Dump with MySQL Shell (from The Oracle MySQL Blog)

MySQL Shell offer many features to make life easier for DBAs and developers. In this post we discuss some of the options available to use when dumping database schemas and data. [...]

Partial physical database restore for MariaDB and MySQL (from Shinguz's Blog)

What is it about? pWhen describing backup and restore scenarios, a full backup and a full restore of the database instance (codemariadbd/code/codemysqld/code) are usually assumed. This means that the entire database instance, including all databases (schemas), is backed up and restored./p pIn practice, however, the situation is often different: An entire database instance is not to be restored, b [...]

Transforming MySQL: Continuent's Two-Decade Legacy of MySQL Innovations (from Continuent Blog)

MySQL has evolved significantly since its inception in 1995, becoming one of the most reliable and widely used open-source database solutions globally. Continuent has been instrumental in driving this evolution.Tags: MySQLinnovationshistory [...]

Understanding Amazon Aurora MySQL storage space utilization (from AWS Database Blog)

Storage in Amazon Aurora MySQL is managed differently from traditional MySQL databases. In this post, we explore the different types of storage available in Amazon Aurora MySQL, how Aurora uses those storage types, and how to monitor storage consumption. We also explore some of the database queries and Amazon CloudWatch metrics for Aurora that you can use to estimate Aurora storage billing. [...]

MySQL 9.0 Community Edition: A Quick Peek (from Percona Database Blog)

♦MySQL 9.0 was released on July 1, 2024. This is an ‘Innovation’ release, which means it provides access to the latest features and improvements in MySQL technologies. Innovation releases are the opposite of the Long Term Support (LTS) releases, where stability is the top priority, and only needed security and other fixes are available. This […] [...]