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 81 to 90 of 5688 « Previous | Next »
Searching For: gp update (reset)
XA transactions now work in your Galera Cluster!

Well, that is more a catchy headline, than the reality: XA transactions work in your Galera Cluster Enterprise Edition (EE). This has been supported since our very first release with 8.0.28 Enterprise, right up till now, in 8.0.39 Enterprise. If you try to run an XA transaction in your regular Galera Cluster you’ll be given an error as such:

mysql> XA START 'xatest';
ERROR 1235 (42000): This version of MySQL doesn't yet support 'XA with wsrep replication plugin'

However, with Galera Cluster Enterprise Edition (EE), XA transactions, “just work”. What is an XA transaction, you might ask? An XA transaction is a distributed transaction …

[Read more]
Galera Cluster for MySQL 8.4.2-26.20 beta preview released

Codership is pleased to announce a new beta preview release of the multi-master Galera Cluster for MySQL 8.4, consisting of MySQL-wsrep 8.4.2-26.20 (release notes, download), with Galera replication library 4.20 (release notes, download) implementing wsrep API version 26. This release incorporates all changes to MySQL 8.4.2, adding a synchronous option for your MySQL High Availability solutions.

One will notice that MySQL-wsrep 8.4.2-26.20 uses …

[Read more]
Galera Cluster for MySQL 8.0.39-26.20 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.39-26.20 (release notes, download), with Galera replication library 4.20 (release notes, download) implementing wsrep API version 26. This release incorporates all changes to MySQL 8.0.39, adding a synchronous option for your MySQL High Availability solutions.

In the Galera replication …

[Read more]
The State of Online Schema Migrations in MySQL

How do you run non-blocking schema changes in MySQL? This is an eternal question. With a plethora of 3rd party solutions and with recent advancements in MySQL, it's difficult to track which solution is preferable for a given schema migration. In this post, we provide a high level overview of the state of MySQL online schema migrations in 2024. We limit the discussion to ALTER TABLE statements, as other DDL statements are typically fast (DROP TABLE is somewhat of an exception, but out of scope of this post).

We'll first examine the native MySQL options: INPLACE and INSTANT. For reference, see Online DDL Operations MySQL 8.0 documentation.

…

[Read more]
HeidiSQL 12.8 with support for encrypted SQLite databases and SSL/MySQL bugfixes

Get it from the download page

3rd party updates:

New stuff:

  • Issue #1284: add support for encrypted SQLite databases, using the C API from utelle/SQLite3MultipleCiphers
  • Issue #1964: support MariaDB's INET4 and INET6 data types …
[Read more]
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]