Announcing MariaDB Server 11.5 GA and 11.6 RC

spacer

We are pleased to announce the general availability (GA) of MariaDB Community Server 11.5 and the release candidate (RC) of MariaDB Community Server 11.6. Both are innovation releases to provide you with new features quickly in an RC and a GA release.

Download Now

MariaDB Community Server 11.5 now GA

MariaDB Community Server 11.5 added new features such as an option to limit disk space for temporary files and tables, new Information Schema Tables for user account information, and details about SEQUENCES, enhancements to statistics monitoring using the “Userstat” plugin and the extension of the TIMESTAMP maximum value from 2038 to 2106.

Read this blog for more details about the new features in the 11.5.2 release.

MariaDB Community Server 11.6 now RC

With our next innovation release series, MariaDB Community Server 11.6, the default character set changes to UNICODE, a new representation to monitor a replication lag is introduced, a new more secure authentication plugin is added, and more.

Changes To Character Sets

Unicode Is Now the Default Character Set

Starting with this release series, utf8mb4 is replacing latin1 as the default character set, which allows the use of UNICODE out of the box without the need to change any character and collation related settings. In detail this means that character_set_server changes from latin1 to utf8mb4 and collation_server changes from latin1_swedish_ci to utf8mb4_uca1400_ai_ci.

Enhancements to Replication

New, Detailed Replication Lag Representation

The Seconds_Behind_Master field of SHOW REPLICA STATUS can be complex and confusing, especially when parallel replication, delayed replication or the option sql_slave_skip_counter is used. To help provide a consistent view of replication lag, three new fields have been added to the statement’s output to provide specific timing information about the state of the IO and SQL threads.

Three new values have been added to the replica status:

Master_last_event_time
Timestamp of the last event read from the primary by the IO thread
Slave_last_event_time
Timestamp from the primary of the last event committed on the replica
Master_Slave_time_diff
The difference of the above two timestamps
New Information Schema Table For Replica Status Information

A new table has been added to the information schema which provides the same information as SHOW REPLICA STATUS. Prior to 11.6, capturing and using the values of these status fields was only possible using external programs or scripts. The new table allows these fields to be used directly in SQL, e.g. in SELECT statements. For example:

MariaDB [test]> select Master_last_event_time,Slave_last_event_time,Master_Slave_time_diff from information_schema.slave_status\G
*************************** 1. row ***************************
Master_last_event_time: 2024-08-13 07:32:38
Slave_last_event_time: 2024-08-13 07:32:37
Master_Slave_time_diff: 1

Security Enhancements

New PARSEC Authentication Plugin

MariaDB Community Server 11.6.1 comes with a new Authentication Plugin — PARSEC (Password Authentication using Response Signed with Elliptic Curves).

PARSEC improves security over old authentication plugins by introducing salted passwords, time consuming key derivation function, and a client-side scramble to ensure that man-in-the-middle attackers cannot control the client response.

Example on how to create a user using the new authentication plugin:

CREATE USER 'MariaDBUser'@'%' IDENTIFIED VIA PARSEC USING PASSWORD('MyPassword123!');

This will result in:

SHOW GRANTS FOR MariaDBUser@'%';

Grants for MariaDBUser@%
GRANT USAGE ON *.* TO `MariaDBUser`@`%` IDENTIFIED VIA parsec USING 'P0:lhXyNv1cIxpB8EnTxR7ON7S7:1l3rWRW1/jw45yrvYXB8eh02wzk7lcJcz4CMcWw2b+8'
Unix Socket Authentication String Support

The unix_socket authentication plugin allows the user to use operating system credentials when connecting to MariaDB via the local Unix socket file.

Before the 11.6 release series, the unix socket auth plugin only allowed a user to connect when the OS socket user id matches the MariaDB user name.

With MariaDB Community Server 11.6 it is possible to specify what OS user is allowed to connect to a given MariaDB user account.

CREATE USER 'dba' IDENTIFIED VIA UNIX_SOCKET AS 'jack';

It is also possible to specify more than one OS user with the usual OR syntax:

CREATE USER dba IDENTIFIED VIA UNIX_SOCKET AS 'jack' OR IDENTIFIED VIA UNIX_SOCKET AS 'jill';

Automatic SST User Account Management with Galera

The State Snapshot Transfer (SST) method, needed to provide a full data copy to a new node, requires a dedicated account to access the remote server (donor) during the SST process.

Starting with this release series, MariaDB Cluster (Galera) can create the user internally for the time of an SST, which makes the need to have an account created manually obsolete. This removes the requirement to have a user and password provided via a configuration file. Having the user created by Galera also ensures that the needed privileges are set.

New Tooling Options

MariaDB Import – Import Databases From Separate Directories

With MariaDB Server 11.5 a new feature was added to MariaDB Dump, allowing users to dump databases to their own sub-directory inside of the directory defined by --dir=<path>.

MariaDB Import can now also be used with the same option --dir=<path>. Each sub-directory includes an .sql file with DDL statements for tables, views and triggers and a .txt file with tab separated data, to be used to restore databases from the logical backup. The files are loaded in descending order by datafile size, which allows a  better load distribution when running with the --parallel option.

The option --all-databases has been added, to be used together with the --dir option for a full restore.

A partial restore is now possible by using the --dir option together with:

–database
Import one or several databases
–table
Import one or several tables
–ignore-database
Ignore one or several databases when importing
–ignore-table
Ignore one or several tables when importing

Miscellaneous

Enhancements To Database Compatibility (DML)

To enhance the MariaDB Server compatibility with other database systems, DELETE now allows table aliases even in the single-table DELETE syntax. A statement like:

DELETE FROM product_details AS pd WHERE id=100;

is now fully supported.

Easier Diagnostics Via Descriptive Thread Names

MariaDB threads now use thread names like the ones used in the performance schema instead of showing (mariadbd) for all threads. This allows easier diagnostics when using top or other utilities.

Enhancements To Statistics Monitoring With Plugin “Userstat”

New monitoring information PAGES_ACCESSED and PAGES_READ_FROM_DISK has been added to table table_stats.This information is available when the plugin has been loaded and activated via:

SET GLOBAL userstat=1;

Vector Search

We recently announced the preview of vector search in MariaDB Server. This capability is still in preview and, at this time, can only be accessed in the dedicated preview release, which is separate from our 11.6 RC version. More information about how to try the preview and first benchmark results of vector search can be found in this blog.

Resources

Download MariaDB Community Server 11.5 GA or 11.6 RC at mariadb.com/downloads