Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 71 to 80 of 5674 « Previous | Next »
Searching For: gp update (reset)
MySQL 9.0 is out! Thank you for your contributions!

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 […]

MySQL 9.0 is out! Thank you for your contributions!

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 great contributors who send patches to MySQL.

For some time now, all the contributors have also been highlighted in the Release Notes, but we never thank enough, so let’s take back the good habits of listing them in a dedicated blog post.

Some contributions were merged into multiple versions. Let’s have a look at all these contributions:

[Read more]
Announcing Vitess 20

We're delighted to announce the release of Vitess 20 along with version 2.13.0 of the Vitess Kubernetes Operator. Version 20 focuses on usability and maturity of existing features, and continues to build on the solid foundation of scalability and performance established in previous versions. Our commitment remains steadfast in providing a powerful, scalable, and reliable solution for your database scaling needs. What's New in Vitess 20 # Query Compatibility: enhanced DML support including improved query compatibility, Vindex hints, and extended support for various sharded update and delete operations.

Database testing for all version changes (including minor versions)

We know that SQL statement compatibility can change with major database version upgrades and that you should adequately test for them. But what about minor version upgrades?

It is dangerous to assume that your existing SQL statements work with a minor update, especially when using an augmented version of an open-source database such as a cloud provider that may not be as transparent about all changes.

While I have always found reading the release notes an important step in architectural principles over the decades, many organizations skip over this principle and get caught off guard when there are no dedicated DBAs and architects in the engineering workforce.

Real-world examples of minor version upgrade issues

Here are two real-world situations common in the AWS RDS ecosystem using MySQL.

  1. You are an organization that uses RDS Aurora MySQL for its production systems, and you upgrade one minor version …
[Read more]
MySQL Protocol: Collations

This story starts with a pull request for go-mysql to allow setting the collation in auth handshake that I was reviewing. The reason why the author wanted to do this is to speedup the connection setup as he has a latency sensitive application and a lot of connection setups and tear downs.

While looking at this I noticed that the collation would be stored in a single byte. However the list of supported collations shows collations with an ID that’s more than 255.

mysql> SELECT MIN(ID),MAX(ID) FROM information_schema.collations;
+---------+---------+
| MIN(ID) | MAX(ID) |
+---------+---------+
|       1 |     323 |
+---------+---------+
1 row in set (0.00 sec)

The …

[Read more]
Galera Cluster for MySQL 8.0.36-26.18 released

Codership is pleased to announce a new Generally Available (GA) release of the multi-master Galera Cluster for MySQL 8.0, consisting of MySQL-wsrep 8.0.36-26.18 (release notes, download). There is no change to the Galera replication library 4.18 (release notes, download) implementing wsrep API version 26. This release incorporates all changes to MySQL 8.0.36, adding a synchronous option for your MySQL High Availability solutions.

This is a …

[Read more]
MySQL: Add missing IDs

A support question: Somebody had a WordPress installation, in which a table had entries with an id column that contained multiple entries with 0. The table was supposed to undergo a schema change where id becomes an actual primary key, and auto_increment. They needed to find all rows WHERE id=0 and assign them unique id values.

Here is a test table:

mysql> create table b ( id integer not null, d varchar(255));
Query OK, 0 rows affected (0.25 sec)

kris> insert into b values (0, "1"), (0, "2"), (3, "3");
Query OK, 3 rows affected (0.06 sec)
Records: 3  Duplicates: 0  Warnings: 0

kris> select * from b;
+----+------+
| id | d    |
+----+------+
|  0 | 1    |
|  0 | 2    |
|  3 | 3    |
+----+------+
3 rows in set (0.00 sec)

[Read more]
MySQL: Add missing IDs

A support question: Somebody had a WordPress installation, in which a table had entries with an id column that contained multiple entries with 0. The table was supposed to undergo a schema change where id becomes an actual primary key, and auto_increment. They needed to find all rows WHERE id=0 and assign them unique id values.

Here is a test table:

mysql> create table b ( id integer not null, d varchar(255));
Query OK, 0 rows affected (0.25 sec)

kris> insert into b values (0, "1"), (0, "2"), (3, "3");
Query OK, 3 rows affected (0.06 sec)
Records: 3 Duplicates: 0 Warnings: 0

kris> select * from b;
+----+------+
| id | d |
+----+------+
| 0 | 1 |
| 0 | 2 |
| 3 | 3 |
+----+------+
3 rows in set (0.00 sec)

The old, …

[Read more]
Profiling memory usage in MySQL

When considering the performance of any software, there's a classic trade-off between time and space. In the process of assessing the performance of a MySQL query, we often focus on execution time (or query latency) and use it as the primary metric for query performance. This is a good metric to use, as ultimately, we want to get query results as quickly as possible.

I recently released a blog post about how to identify and profile problematic MySQL queries, with a discussion centered around measuring poor performance in terms of execution time and row reads. However, in this discussion, memory consumption was largely ignored.

Though it may not be needed as often, MySQL also has built-in mechanisms for gaining a deep understanding of both how much memory a query is using and also what that memory is being used for. Let's …

[Read more]
Listing and Updating MySQL HeatWave Instances with the OCI CLI

The Oracle Cloud Infrastructure (OCI) command line interface (CLI) allows users to manage OCI resources. In this post, we will discuss how to use the OCI CLI to retrieve a list of MySQL HeatWave instances, retrieve more detailed information for a specific instance, and update properties of that instance.