I tried out Amazon RDS for MariaDB 12.3 now that it has been officially released (GA)

I tried out Amazon RDS for MariaDB 12.3 now that it has been officially released (GA)

MariaDB 12.3 is a long-term support (LTS) release. We verified the impact of reserved words on existing SQL and the differences in configurable values in parameter groups between a newly created 12.3.2 environment on Amazon RDS and an environment in-place upgraded from 11.8.8 to 12.3.2.
2026.08.13

This page has been translated by machine translation. View original

Introduction

On August 11, 2026, Amazon RDS for MariaDB 12.3.2 was announced on AWS What's New.

https://aws.amazon.com/about-aws/whats-new/2026/08/amazon-rds-mariadb-1232-available/

The release dates and end-of-support dates for each major version of RDS for MariaDB can be confirmed from the MariaDB version management documentation.

MariaDB Major Version Community Release Date RDS Release Date Community EOL RDS Standard Support End
12.3 May 28, 2026 August 7, 2026 June 2029 June 2029
11.8 August 6, 2025 August 25, 2025 June 2028 June 2028
11.4 August 8, 2024 October 15, 2024 May 2029 May 2029
10.11 February 16, 2023 August 21, 2023 February 16, 2028 February 2028
10.6 July 6, 2021 February 3, 2022 July 6, 2026 November 2026
10.5 June 24, 2020 January 21, 2021 June 24, 2025 August 2026

Versions prior to 10.5 are listed as deprecated versions in the same document.

At the patch version level, the Supported MariaDB minor versions on Amazon RDS section of the same document states that the RDS standard support end date for 12.3.2 is August 2027.

During the preview period, it was only available at rds-preview.us-east-2.amazonaws.com, but after GA it is available in regular regions. With describe-orderable-db-instance-options, 12.3.2 was returned as a selectable engine version when creating a DB instance in the Tokyo region (ap-northeast-1) as well.

Verification in the preview environment is summarized in the following prior article.

https://dev.classmethod.jp/articles/rds-preview-mariadb-12-3-new-features/

This article covers what changes in column name syntax and parameter group settings when creating a new instance with 12.3.2 and when performing an in-place upgrade from 11.8.8 to 12.3.2.

Notes on Upgrading to 12.3

Notes on upgrading from 11.8 to 12.3 are listed in the official documentation from MariaDB and AWS.

  • Reserved words have been added and can no longer be used as identifiers without quotation marks. The ones whose impact is confirmed in this article are TO_DATE and CONVERSION (Upgrading from MariaDB 11.8 to MariaDB 12.3)
  • The default value of innodb_snapshot_isolation has changed to ON. Applications that depend on transaction isolation levels require testing (MariaDB Foundation announcement)
  • big_tables / storage_engine / large_page_size have been removed (the upgrade guide referenced above)
  • On replicas, the master_use_gtid setting is not carried over and is reset to DEFAULT. This is fixed in 12.3.3 (same guide)
  • Major upgrades cannot be rolled back to the previous version after completion. It is recommended to take a snapshot beforehand and test first on an instance restored from that snapshot (AWS documentation)

The results of actually testing the reserved words and changes in values configurable in parameter groups are shown below.

Verification Details

Verification Environment

Verification was conducted in us-west-2 using two db.t4g.micro DB instances. One was newly created with 12.3.2, and the other was created with 11.8.8 and then in-place upgraded to 12.3.2. Connections were made from EC2 via Systems Manager Run Command, using TLS connections with the RDS CA bundle.

Verifying Reserved Words

The engine version was confirmed on the newly created instance.

SELECT VERSION(), @@version_comment;
-- 12.3.2-MariaDB | managed by https://aws.amazon.com/rds/

CREATE TABLE statements specifying to_date and conversion as unquoted column names both resulted in syntax errors.

CREATE TABLE gatest.t_to_date (id INT PRIMARY KEY, to_date DATE)
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'to_date DATE)' at line 1
CREATE TABLE gatest.t_conversion (id INT PRIMARY KEY, conversion VARCHAR(16))
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'conversion VARCHAR(16))' at line 1

By enclosing them in backticks, tables with the same column names could be created.

TO_DATE continued to be usable as a function.

SELECT TO_DATE('2026-08-12', 'YYYY-MM-DD');
-- 2026-08-12 00:00:00

Upgrade Path

Since versions 12.0 / 12.1 / 12.2 are not available on RDS, the next major version after 11.8 is 12.3. Looking at ValidUpgradeTarget in describe-db-engine-versions, 12.3.2 was returned from any of 11.8.8 / 11.4.12 / 10.11.18, confirming that they are eligible for in-place upgrade.

Major version upgrades for RDS for MariaDB also lists Any MariaDB version to MariaDB 12.3 as a supported upgrade path.

Preparing and Executing the Upgrade

In 11.8.8, tables with to_date and conversion as unquoted column names could be created. A SELECT with unquoted column names also successfully retrieved the one inserted row.

CREATE TABLE upgtest.reserved_word_test (
  id INT PRIMARY KEY, to_date DATE, conversion VARCHAR(16)
);
SELECT id, to_date FROM upgtest.reserved_word_test;
-- 1 | 2026-08-12

An in-place upgrade was executed on this instance by specifying 12.3.2 as the engine version with modify-db-instance. If a custom parameter group is in use, a parameter group for the 12.3 family must be prepared and swapped in (source: Major version upgrades for RDS for MariaDB referenced above).

The pre-upgrade check produced no warnings including reserved word incompatibilities, and the upgrade completed successfully to 12.3.2.

Changes After Upgrade

The VERSION() after the upgrade was 12.3.2-MariaDB-log. The one row in the existing table was retained.

While the data was retained, referencing the existing to_date column without quotation marks resulted in a syntax error.

SELECT id, to_date FROM upgtest.reserved_word_test
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'FROM upgtest.reserved_word_test' at line 1

Referencing the conversion column without quotation marks also resulted in the same ERROR 1064. Both to_date and conversion could be referenced when enclosed in backticks.

On the other hand, the SHOW CREATE TABLE output returned column names as backtick-quoted identifiers both before and after the upgrade.

CREATE TABLE `reserved_word_test` (
  ...
  `to_date` date DEFAULT NULL,
  `conversion` varchar(16) DEFAULT NULL,
  ...
)

For read_only, both the value displayed in the DB and the values configurable in the parameter group changed. The result of SELECT @@global.read_only was 0 in 11.8.8 and OFF in 12.3.2.

The configurable values in parameter groups also differ between families. In the 12.3 family, NO_LOCK could be set for read_only, but it was rejected in the 11.8 family. Conversely, for group_concat_max_len, the value 4294967296 that was accepted in the 11.8 family was rejected as out of range in the 12.3 family.

Parameter 11.8 Family 12.3 Family
read_only 0 / 1 / {TrueIfReplica} ON / OFF / NO_LOCK / NO_LOCK_NO_ADMIN / {TrueIfReplica}
group_concat_max_len 4〜18446744073709547520 4〜1073741824

When NO_LOCK was specified for read_only in the 11.8 family, the following error occurred.

An error occurred (InvalidParameterValue) when calling the ModifyDBParameterGroup operation: Invalid boolean value: NO_LOCK

The value 4294967296 specified for group_concat_max_len in the 12.3 family was rejected as out of range.

An error occurred (InvalidParameterValue) when calling the ModifyDBParameterGroup operation: Value: 4294967296 is outside of range: 4-1073741824 for parameter: group_concat_max_len

Summary

For new adoptions of RDS for MariaDB, MariaDB 12.3, being an LTS release, can be considered as the primary candidate.

On the other hand, when performing an in-place upgrade of an existing environment, compatibility issues may arise in 12.3 due to reserved words and parameter group settings. It is recommended to reproduce the actual workload on a verification DB restored from a snapshot and confirm in advance.

For environments already using extended support or those nearing the end of standard support, a major upgrade to 12.3 may be difficult. In such cases, consider 11.4 or 10.11 as upgrade targets as well, and plan your upgrades with end-of-support dates in mind.

Share this article

AWSのお困り事はクラスメソッドへ