All pages
Powered by GitBook
1 of 1

Loading...

What's New in MariaDB Enterprise Server 10.5?

MariaDB Enterprise Server 10.5 introduces the new features listed below.

Notable Features

Enterprise ColumnStore Storage Engine

The ColumnStore storage engine is a columnar storage engine that provides distributed, columnar storage for scalable analytical processing and smart transactions.

MariaDB Enterprise Server 10.5 includes an enterprise version of the ColumnStore storage engine as a plugin:

  • It includes MariaDB Enterprise ColumnStore 5, which has many improvements.

  • The installation process has been massively simplified.

  • The multi-node implementation has been completely rebuilt to use a REST API for orchestration.

  • See What's New in MariaDB Enterprise ColumnStore 5? for more details.

Other Features

Embracing the MariaDB Name

MariaDB Enterprise Server 10.5 uses the "MariaDB" name in more places:

  • It uses MariaDB in many error messages that previously referred to MySQL.

  • It uses DBD::MariaDB for bundled Perl scripts that previously used DBD::mysql.

  • It uses new MariaDB-based names as the primary names for many executables. The old names are still supported for backward compatibility using symbolic links. The new MariaDB-based names were first introduced in MariaDB Enterprise Server 10.4. However, in that version, the old names were still the primary names for the executables, and the new names were supported using symbolic links. See below for the new MariaDB-based names:

Old Executable Name
New Executable Name

mysql

mysqld

mariadb-backup

mysql_plugin

mysql_upgrade

mysql_waitpid

mysqladmin

mysqlbinlog

mysqlcheck

mysqldump

mysqlimport

mysqlshow

mysqlslap

mysql_client_test

mariadb-client-test

mysql_client_test_embedded

mariadb-client-test-embedded

mysql_config

mariadb-config

mysql_convert_table_format

mariadb-convert-table-format

mysql_embedded

mariadb-embedded

mysql_find_rows

mariadb-find-rows

mysql_fix_extensions

mariadb-fix-extensions

mysql_install_db

mariadb-install-db

mysql_ldb

mariadb-ldb.

mysql_secure_installation

mariadb-secure-installation

mysql_setpermission

mariadb-setpermission

mysql_tzinfo_to_sql

mariadb-tzinfo-to-sql

mysql_upgrade_service

mariadb-upgrade-service

mysql_upgrade_wizard

mariadb-upgrade-wizard

mysqld_multi

mariadbd-multi

mysqld_safe

mariadbd-safe

mysqld_safe_helper

mariadbd-safe-helper

mysqldumpslow

mariadb-dumpslow

mysqlhotcopy

mariadb-hotcopy

mysqltest

mariadb-test

mysqltest_embedded

mariadb-test-embedded

Packaging

MariaDB Enterprise Server 10.5 includes some packaging improvements:

  • It includes a new mariadb-conv command-line tool to encode/decode MariaDB-encoded file system names.

  • Binary tarball packages have the following changes:

    • Embedded server (libmysqld) has been removed.

    • Debug symbols have been stripped from non-server binaries.

    • The server binary () retains its debug symbols, so that stack traces contain readable function names.

    • Binary tarball size has been reduced from over 1 GB to around 300 MB.

  • It removes the TokuDB storage engine from packages.

  • It removes the Cassandra storage engine from packages.

  • It removes support for RHEL6 and CentOS 6.

InnoDB Storage Engine

The is an ACID-compliant storage engine that is very performant and reliable for general purpose transactional workloads.

MariaDB Enterprise Server 10.5 includes many significant improvements to the :

  • It implements a new thread pool for InnoDB background tasks, which allows for InnoDB to use system resources more efficiently.

    • It reduces semaphore contention in several areas to help the system perform better under high concurrency:

    • It reduces semaphore contention when accessing the buffer pool.

    • It removes the ability to configure multiple buffer pool instances, since it does not reduce contention.

    • It reduces semaphore contention when executing statements.

    • It uses table metadata locks instead of internal InnoDB semaphores for certain background operations.

    • It adds instrumentation that informs the server's thread pool about semaphore waits, so that the thread pool can let other client connections perform work while a client connection is waiting on a semaphore.

  • It improves performance in several areas:

    • It uses a new InnoDB redo log format that is more efficient.

    • It removes the ability to configure multiple InnoDB redo log files, since it does not help performance.

    • It optimizes access to certain InnoDB page header fields.

    • It optimizes how the change buffer is merged.

    • It optimizes how InnoDB scrubs deleted data.

  • It improves stability in several areas:

    • It improves how InnoDB scrubs deleted data by ensuring that scrubbing operations are properly written to the InnoDB redo log.

    • It receives foreign key metadata from the server, rather than relying on an internal SQL parser.

    • It allows prepared XA transactions to be properly recovered after a client disconnects.

  • It allows the without a server restart. As a consequence, the innodb_purge_threads system variable can be changed dynamically with the SET GLOBAL statement.

  • It allows the without a server restart. As a consequence, the innodb_log_file_size system variable can be changed dynamically with the SET GLOBAL statement.

  • It allows the without a server restart. As a consequence, the and system variables can be changed dynamically with the SET GLOBAL statement.

Spider Storage Engine

The allows you to build complex and powerful distributed databases using federated and sharded tables.

MariaDB Enterprise Server 10.5 contains several enhancements for the storage engine:

  • It adds support for an . This feature has beta maturity.

  • It adds the table.

Aria Storage Engine

The is a crash-safe storage engine that is incredibly fast for read-only workloads.

MariaDB Enterprise Server 10.5 contains several enhancements for the :

  • It handles the statement by blocking commits to Aria tables, which allows for safer backups with MariaDB Backup.

  • It increases the index length limit for Aria tables from 1000 bytes to 2000 bytes.

S3 Storage Engine

MariaDB Enterprise Server 10.5 contains several enhancements to the :

  • The S3 storage engine allows tables to be archived in S3-compatible storage.

  • Tables can be archived in S3 by executing .

  • After the table has been archived, it becomes read-only.

  • The S3 storage engine supports partitioning.

  • The S3 storage engine supports replication.

Privileges Comparison ES10.4 and ES10.5.8-5

MariaDB Enterprise Server 10.5 adds privileges that allow operations that previously required the . The following table is a summary of the changes between MariaDB Enterprise Server 10.4 and MariaDB Enterprise Server 10.5.8-5. More specific detail is found in , and in MariaDB Reference.

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to the following system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • privilege is an alias for this new privilege, but the capabilities have changed

  • Unlike legacy REPLICATION CLIENT privilege, can no longer execute SHOW SLAVE STATUS, SHOW REPLICA STATUS in ES10.5

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements, which are output by

  • Allows the user to execute statements when is set to replication

  • Allows the user to set the session values of several system variables that are usually included in statements:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Skips the execution of when the user connects

  • Ignores when the user connects

  • Ignores when the user connects

  • Ignores when the user connects

  • Allows the user to kill connections owned by other users with the statement

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to write data even if the system variable is enabled

  • Allows the user to execute statements even if the system variable is enabled

  • Allows the user to execute statements even if the system variable is enabled

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • REPLICA MONITOR is a new privilege in ES10.5.8-5 and was not present in earlier releases

  • REPLICA MONITOR can execute:

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

  • REPLICA MONITOR is an alias for SLAVE MONITOR which is also new in ES10.5.8-5

Present in ES10.4?
Present in ES10.5.8-5?

yes

no

Notes:

  • Replaced by in 10.5

  • REPLICATION CLIENT can be used as an alias for BINLOG MONITOR but the capabilities for BINLOG MONITOR are different than those of legacy REPLICATION CLIENT

    • Unlike legacy REPLICATION CLIENT privilege, can no longer execute SHOW SLAVE STATUS, SHOW REPLICA STATUS in ES10.5

    • REPLICATION CLIENT as an alias for BINLOG MONITOR:

      • Allows the user to execute statements

      • Allows the user to execute statements

      • Allows the user to execute statements

      • Allows the user to execute statements

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Added in ES10.5 as an alias for

Present in ES10.4?
Present in ES10.5.8-5?

yes

yes

Notes:

  • Can be used as an alias for

  • In ES10.5 REPLICATION SLAVE can no longer execute SHOW RELAYLOG EVENTS. In ES10.5 versions earlier than ES10.5.8-5, SHOW RELAYLOG EVENTS requires . In ES10.5.8-5, SHOW RELAYLOG EVENTS requires

  • In ES10.5 REPLICATION SLAVE can no longer execute . SHOW BINLOG EVENTS requires

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Alias for

  • Capabilities changed in ES10.5.8-5 with the following abilities removed from REPLICATION SLAVE ADMIN and now granted with :

    • SHOW ALL SLAVES STATUS

    • SHOW ALL REPLICAS STATUS

  • Allows the user to execute statements, which are output by mariadb-binlog

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Alias for see for details

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to set the definer of views, triggers, stored procedures, stored functions, and events

  • Allows the user to view the definer of an object, even if the user account no longer exists. |

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • SLAVE MONITOR is a new privilege in ES10.5.8-5 and was not present in earlier releases

  • SLAVE MONITOR can execute:

    • SHOW ALL SLAVES STATUS

    • SHOW ALL REPLICAS STATUS

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the SLAVE MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required.

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

  • SLAVE MONITOR is an alias for REPLICA MONITOR which is also new in ES10.5.8-5

Present in ES10.4?
Present in ES10.5.8-5?

yes

yes

Notes:

  • The SUPER privilege is present in ES10.4 and ES10.5 but the capabilities have changed. New privileges have been added in ES10.5 to provide finer grained control and reduce the need to grant SUPER privileges

  • With the addition of the new privileges in ES10.5, SUPER:

    • no longer executes SHOW MASTER STATUS, SHOW BINLOG STATUS, and SHOW BINARY LOGS. Those require BINLOG MONITOR in ES10.5

    • no longer sets the definer for views, triggers, functions, procedures, and events in ES10.5. Those capabilities require SET USER in ES10.5

    • no longer ignores the read_only system variable in ES10.5. That capability requires READ ONLY ADMIN in ES10.5

    • no longer kills threads owned by other users and bypass limits on connection and authentication failures. Those capabilities require CONNECTION ADMIN in ES10.5

    • no longer executes CREATE SERVER, ALTER SERVER, DROP SERVER in ES10.5. Those capabilities require FEDERATED ADMIN in ES10.5

    • no longer executes PURGE BINARY LOGS in ES10.5. PURGE BINARY LOGS requires BINLOG ADMIN in ES10.5.

Privileges Comparison ES10.4 and ES10.5 before ES10.5.8-5

MariaDB Enterprise Server 10.5 adds privileges that allow operations that previously required the . The following table is a summary of the changes between MariaDB Enterprise Server 10.4 and MariaDB Enterprise Server 10.5 before MariaDB Enterprise Server 10.5.8-5. More specific detail is found in , and in .

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to the following system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Legacy privilege is an alias for this new privilege, but the capabilities have changed

  • Unlike legacy REPLICATION CLIENT privilege, can no longer execute SHOW SLAVE STATUS, SHOW REPLICA STATUS in ES10.5

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • BINLOG MONITOR allows the user to execute statements

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements, which are output by

  • Allows the user to execute SET TIMESTAMP statements when is set to replication

  • Allows the user to set the session values of several system variables that are usually included in statements:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Skips the execution of init_connect when the user connects

  • Ignores max_connections when the user connects

  • Ignores max_user_connections when the user connects

  • Ignores max_password_errors when the user connects

  • Allows the user to kill connections owned by other users with the KILL statement

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to write data even if the system variable is enabled

  • Allows the user to execute statements even if the system variable is enabled

  • Allows the user to execute statements even if the system variable is enabled

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

yes

no

Notes:

  • Replaced by in 10.5

  • REPLICATION CLIENT can be used as an alias for BINLOG MONITOR but the capabilities for BINLOG MONITOR are different than those of legacy REPLICATION CLIENT

  • Unlike legacy REPLICATION CLIENT privilege, can no longer execute SHOW SLAVE STATUS, SHOW REPLICA STATUS in ES10.5

  • REPLICATION CLIENT as an alias for BINLOG MONITOR:

    • Allows the user to execute statements

    • Allows the user to execute statements

    • Allows the user to execute statements

    • Allows the user to execute statements

    • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

    • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

REPLICATION MASTER ADMIN

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Added in ES10.5 as an alias for

Present in ES10.4?
Present in ES10.5.8-5?

yes

yes

Notes:

  • Can be used as an alias for

  • In ES10.5 REPLICATION SLAVE can no longer execute SHOW RELAYLOG EVENTS. In ES10.5 versions earlier than ES10.5.8-5, SHOW RELAYLOG EVENTS requires . In ES10.5.8-5, SHOW RELAYLOG EVENTS requires

  • In ES10.5 REPLICATION SLAVE can no longer execute . SHOW BINLOG EVENTS requires

  • If a user upgrades from ES10.4 or earlier to ES10.5.8-5 or later, any users with REPLICATION CLIENT or REPLICATION SLAVE privileges will automatically be granted the REPLICA MONITOR privilege. This privilege upgrade happens upon server startup, so mysql_upgrade is not required

  • The upgrade behavior does not apply to minor release upgrades that upgrade from ES10.5.6-4 or earlier ES10.5.x to ES10.5.8-5 or later

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Alias for REPLICATION SLAVE ADMIN

  • Capabilities changed in ES10.5.8-5 with the following abilities removed from REPLICATION SLAVE ADMIN and now granted with :

    • SHOW ALL SLAVES STATUS

    • SHOW ALL REPLICAS STATUS

  • Allows the user to execute statements, which are output by

  • Allows the user to execute CHANGE MASTER TO statements

  • Allows the user to execute START ALL REPLICAS statements

  • Allows the user to execute START ALL SLAVES statements

  • Allows the user to execute START REPLICA statements

  • Allows the user to execute START SLAVE statements

  • Allows the user to execute STOP ALL REPLICAS statements

  • Allows the user to execute STOP ALL SLAVES statements

  • Allows the user to execute STOP REPLICA statements

  • Allows the user to execute STOP SLAVE statements

  • Allows the user to set system variables:

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Alias for see for details

Present in ES10.4?
Present in ES10.5.8-5?

no

yes

Notes:

  • Allows the user to set the definer of views, triggers, stored procedures, stored functions, and events

  • Allows the user to view the definer of an object, even if the user account no longer exists.

Present in ES10.4?
Present in ES10.5.8-5?

yes

yes

Notes:

  • The SUPER privilege is present in ES10.4 and ES10.5 but the capabilities have changed. New privileges have been added in ES10.5 to provide finer grained control and reduce the need to grant SUPER privileges

  • With the addition of the new privileges in ES10.5, SUPER:

    • no longer executes SHOW MASTER STATUS, SHOW BINLOG STATUS, and SHOW BINARY LOGS. Those require BINLOG MONITOR in ES10.5

    • no longer sets the definer for views, triggers, functions, procedures, and events in ES10.5. Those capabilities require SET USER in ES10.5

    • no longer ignores the read_only system variable in ES10.5. That capability requires READ ONLY ADMIN in ES10.5

    • no longer kills threads owned by other users and bypass limits on connection and authentication failures. Those capabilities require CONNECTION ADMIN in ES10.5

    • no longer executes CREATE SERVER, ALTER SERVER, DROP SERVER in ES10.5. Those capabilities require FEDERATED ADMIN in ES10.5

    • no longer executes PURGE BINARY LOGS in ES10.5. PURGE BINARY LOGS requires BINLOG ADMIN in ES10.5

MariaDB Replication

MariaDB Enterprise Server 10.5 improves :

  • It allows extended table metadata to be written to the binary log by configuring the system variable.

  • It changes the default parallel replication mode from conservative to optimistic.

  • It renames the REPLICATION CLIENT privilege to BINLOG MONITOR, but it still supports the old name.

  • It allows replication-related operations that previously required the SUPER privilege to the BINLOG MONITOR (formerly REPLICATION CLIENT):

BINLOG MONITOR (formerly REPLICATION CLIENT)

Newly Granted Operations:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • It adds new replication-related privileges to allow operations that previously required the SUPER privilege:

BINLOG ADMIN

** Granted Operations:**

  • Allows the user to execute PURGE BINARY LOGS statements

  • Allows the user to set system variables:

BINLOG REPLAY

Granted Operations:

  • Allows the user to execute statements, which are output by

  • Allows the user to execute SET TIMESTAMP statements when is set to replication

  • Allows the user to set the session values of several system variables that are usually included in statements:

REPLICATION MASTER ADMIN

Granted Operations:

  • Allows the user to execute SHOW REPLICA HOSTS statements

  • Allows the user to execute SHOW SLAVE HOSTS statements

  • Allows the user to set system variables:

REPLICATION SLAVE ADMIN

Granted Operations:

  • Allows the user to execute statements, which are output by

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute SHOW ALL SLAVES STATUS statements

  • Allows the user to execute SHOW RELAYLOG EVENTS statements

  • Allows the user to execute SHOW REPLICA STATUS statements

  • Allows the user to execute SHOW SLAVE STATUS statements

  • Allows the user to execute START ALL REPLICAS statements

  • Allows the user to execute START ALL SLAVES statements

  • Allows the user to execute START REPLICA statements

  • Allows the user to execute START SLAVE statements

  • Allows the user to execute STOP ALL REPLICAS statements

  • Allows the user to execute STOP ALL SLAVES statements

  • Allows the user to execute STOP REPLICA statements

  • Allows the user to execute STOP SLAVE statements

  • Allows the user to set system variables:

Statement Aliases

  • It adds aliases for statements that contain the word SLAVE that also allow the word REPLICA:

Statement
New Statement Alias

  • It adds the shutdown_wait_for_slaves system variable to control whether a replication-aware shutdown is the default shutdown behavior.

MariaDB Enterprise Cluster

MariaDB Enterprise Server 10.5 improves support for Galera Cluster:

  • It allows Galera Cluster to be configured to prohibit DDL replication to only the storage engines that support Galera Cluster by configuring the system variable.

  • It adds full GTID support to Galera Cluster.

  • It adds an inconsistency voting protocol to mitigate the harm of inconsistencies by choosing very carefully which inconsistent nodes need to abort.

  • It adds support for non-blocking operations when is set to NBO, including:

    • operations executed in SHARED or EXCLUSIVE locking mode.

    • operations executed in SHARED or EXCLUSIVE locking mode.

    • operations.

    • operations.

  • It adds a "black box" for Galera troubleshooting. The black box holds debug log messages in memory, which can be analyzed in case of a crash.

  • The default value for gcache.size in has been changed to 1 GB.

Temporal Data

MariaDB Enterprise Server 10.5 improves support for :

  • It allows that are partitioned on an interval of SYSTEM_TIME to be configured with a specific start date and time, which can make partition management more user-friendly.

  • It allows to be configured to prohibit overlapping time periods.

SQL Functionality

MariaDB Enterprise Server 10.5 improves SQL functionality in several areas:

  • It changes the behavior of the statement to forcefully drop the table, even if the storage engine can't find the table.

  • It changes the behavior of the statement, so that it no longer flushes the table definition cache, so that it performs better under concurrency.

  • It changes the behavior of the ANALYZE statement to SHOW the time spent checking the WHERE clause.

  • It adds support for statements.

  • It adds support for statements.

  • It adds support for the EXCEPT ALL clause in statements.

  • It adds support for the INTERSECT ALL clause in statements.

  • It adds support for the CYCLE clause in common table expressions (CTEs).

  • It adds support for COMMENT option for and statements.

  • It adds support for

  • It adds support for .

  • It adds support for .

  • It adds support for defining foreign keys using REFERENCE clauses in column definitions.

  • It adds support for the VISIBLE option in index definitions, which can be needed to import dumps from MySQL.

  • It adds support for the WITHOUT OVERLAP option in index definitions that are defined for .

  • It adds support for the STARTS option for system-versioned tables that are partitioned on an interval of SYSTEM_TIME.

  • It adds support for the function.

  • It adds support for the function.

  • It adds support for the RELEASE_ALL_LOCKS() function.

  • It adds support for the function.

  • It adds support for a new Data Type API, so that plugins can define custom data types.

  • It adds support for the data type, which can be used to represent IPv4 and IPv6 addresses.

  • It changes the way that , , and columns that use the pre-MariaDB 10.0 format are displayed in the output of and and in the value of the column. Columns using the older format will have a comment that says /* mariadb-5.3 */.

Security

MariaDB Enterprise Server 10.5 includes several improvements:

  • It allows a server to be configured to by configuring the system variable.

    • If this mode is enabled, then all TCP connections must use TLS.

    • Local connections that connect using a Unix socket or a named pipe are also allowed.

  • It adds the CONNECTION_TYPE column to the , which can be used to determine which connections are using TLS.

  • It renames the REPLICATION CLIENT privilege to BINLOG MONITOR, but it still supports the old name.

  • It allows replication-related operations that previously required the SUPER privilege to the BINLOG MONITOR (formerly REPLICATION CLIENT):

BINLOG MONITOR (formerly REPLICATION CLIENT)

Newly Granted Operations:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • It adds new privileges to allow operations that previously required the SUPER privilege.

Granted Operations:

  • Allows the user to execute statements

  • Allows the user to set system variables:

Granted Operations:

  • Allows the user to execute BINLOG statements, which are output by mariadb-binlog

  • Allows the user to execute SET TIMESTAMP statements when secure_timestamp is set to replication

  • Allows the user to set the session values of several system variables that are usually included in BINLOG statements:

CONNECTION ADMIN

Granted Operations:

  • Skips the execution of init_connect when the user connects

  • Ignores max_connections when the user connects

  • Ignores max_user_connections when the user connects

  • Ignores max_password_errors when the user connects

  • Allows the user to kill connections owned by other users with the KILL statement

  • Allows the user to set system variables:

    • |

FEDERATED ADMIN

Granted Operations:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

READ ONLY ADMIN

Granted Operations:

  • Allows the user to write data even if the system variable is enabled

  • Allows the user to execute DROP TRIGGER statements even if the system variable is enabled

  • Allows the user to execute START TRANSACTION READ WRITE statements even if the system variable is enabled

  • Allows the user to set system variables:

REPLICATION MASTER ADMIN

Granted Operations:

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to set system variables:

REPLICATION SLAVE ADMIN

Granted Operations:

  • Allows the user to execute statements, which are output by

  • Allows the user to execute statements

  • Allows the user to execute STATUS statements

  • Allows the user to execute SHOW ALL SLAVES STATUS statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to execute START ALL REPLICAS statements

  • Allows the user to execute START ALL SLAVES statements

  • Allows the user to execute statements

  • Allows the user to execute START SLAVE statements

  • Allows the user to execute STOP ALL REPLICAS statements

  • Allows the user to execute STOP ALL SLAVES statements

  • Alows the user to execute statements

  • Allows the user to execute statements

  • Allows the user to set system variables:

SET USER

Granted Operations:

  • Allows the user to set the definer of views, triggers, stored procedures, stored functions, and events.○ Allows the user to view the definer of an object, even if the user account no longer exists

HashiCorp Vault Encryption Plugin

MariaDB Enterprise Server 10.5 introduces an encryption plugin to support for :

  • It allows HashiCorp Vault to manage encryption keys for .

  • It communicates with the remote KMS using TLS.

  • It supports key rotation.

Performance Schema

MariaDB Enterprise Server 10.5 includes several improvements:

  • It adds support for some of the instrumentation and tables included in MySQL 5.7.

  • It adds the CONNECTION_TYPE column to the threads table, which can be used to determine which connections are using TLS.

  • It adds new instrumentation for the following:

    • Memory

    • Metadata locks

    • Prepared statements

    • Stored procedures

    • Transactions

    • SX-Locks

    • Status variables

    • User variables

  • It adds the following new tables:

    • global_variables

    • [session_variables](https://app.gitbook.com/o/diTpXxF5WsbHqTReoBsS/s/SsmexDFPv2xG2OTyO5yV/reference/sql-statements/administrative-sql-statements/system-tables/performance-schema/performance-schema-tables/performance-schema-session_status-table

Information Schema

MariaDB Enterprise Server 10.5 includes several improvements:

  • It adds the GLOBAL_VALUE_PATH column to the table, which can be used to determine which configuration file a variable's global value was read from.

  • It adds new tables to monitor the internals of the thread pool on Linux:

  • It removes the table.

  • It changes some other InnoDB-related tables in minor ways.

Thread Pool

MariaDB Enterprise Server 10.5 includes several thread pool improvements:

  • It improves how it calculates the number of currently active threads, which can help prevent deadlocks.

  • It improves performance under very bursty workloads by basing the thread creation rate and the throttling interval on the values of the and system variables.

  • It adds new tables to monitor the internals of the thread pool on Linux:

Protocol

MariaDB Enterprise Server 10.5 includes several protocol improvements:

  • It adds protocol support for the new Data Type API.

  • It adds protocol support for the data type.

  • It adds protocol support for the data type.

XA Transactions

MariaDB Enterprise Server 10.5 includes some XA transaction improvements:

  • It allows prepared XA transactions to be properly recovered after a client disconnects.

Internals

MariaDB Enterprise Server 10.5 includes some internal improvements:

  • Its internal regular expression library has been upgraded from PCRE to PCRE2.

  • It adds support for a new Data Type API, so that plugins can define custom data types.

For a complete list of changes, see MariaDB Enterprise Server 10.5.4-2 release notes.

mariadb-backup
START ALL SLAVES
START ALL REPLICAS
STOP ALL SLAVES
STOP ALL REPLICAS
SHOW SLAVE STATUS
SHOW REPLICA STATUS
SHOW ALL SLAVES STATUS
SHOW ALL REPLICAS STATUS
ODBC foreign data wrapper
mariadbd
InnoDB storage engine
InnoDB storage engine
DROP TABLE
number of InnoDB purge threads to be changed dynamically
InnoDB redo log to be resized dynamically
number of InnoDB I/O threads to be changed dynamically
innodb_read_io_threads
innodb_write_io_threads
Spider storage engine
Spider
information_schema.SPIDER_WRAPPER_PROTOCOLS
Aria storage engine
Aria storage engine
BACKUP STAGE BLOCK_COMMIT
S3 storage engine
ALTER TABLE ... ENGINE=S3
SUPER
MariaDB Replication
BINLOG ADMIN
PURGE BINARY LOGS
SET
binlog_annotate_row_events
binlog_cache_size
binlog_commit_wait_count
binlog_commit_wait_usec
binlog_direct_non_transactional_updates
binlog_file_cache_size
binlog_format
binlog_row_image
binlog_row_metadata
binlog_stmt_cache_size
expire_logs_days
log_bin_compress
log_bin_compress_min_len
log_bin_trust_function_creators
max_binlog_cache_size
max_binlog_stmt_cache_size
max_binlog_size
sql_log_bin
sync_binlog
BINLOG MONITOR
Legacy REPLICATION CLIENT
BINLOG MONITOR
SHOW BINLOG EVENTS
SHOW BINLOG STATUS
SHOW BINARY LOGS
SHOW MASTER STATUS
BINLOG REPLAY
BINLOG
mariadb-binlog
SET TIMESTAMP
secure_timestamp
BINLOG
gtid_domain_id
gtid_seq_no
pseudo_thread_id
server_id
CONNECTION ADMIN
init_connect
max_connections
max_user_connections
max_password_errors
KILL
connect_timeout
disconnect_on_expired_password
extra_max_connections
init_connect
max_connections
max_connect_errors
max_password_errors
proxy_protocol_networks
secure_auth
slow_launch_time
thread_pool_exact_stats
thread_pool_dedicated_listener
thread_pool_idle_timeout
thread_pool_max_threads
thread_pool_min_threads
thread_pool_mode
thread_pool_oversubscribe
thread_pool_prio_kickup_timer
thread_pool_priority
thread_pool_size
thread_pool_stall_limit
FEDERATED ADMIN
CREATE SERVER
ALTER SERVER
DROP SERVER
READ_ONLY ADMIN
read_only
DROP TRIGGER
read_only
START TRANSACTION READ WRITE
read_only
read_only
REPLICA MONITOR
SHOW SLAVE STATUS
SHOW REPLICA STATUS
SHOW ALL SLAVES STATUS
SHOW ALL REPLICAS STATUS
SHOW RELAYLOG EVENTS
REPLICATION CLIENT
BINLOG MONITOR
BINLOG MONITOR
SHOW BINLOG EVENTS
SHOW BINLOG STATUS
SHOW BINARY LOGS
SHOW MASTER STATUS
REPLICATION MASTER ADMIN
SHOW REPLICA HOSTS
SHOW SLAVE HOSTS
gtid_binlog_state
gtid_domain_id
master_verify_checksum
server_id
REPLICATION REPLICA
REPLICATION SLAVE
REPLICATION SLAVE
REPLICATION REPLICA
REPLICATION REPLICA ADMIN
REPLICA MONITOR
SHOW BINLOG EVENTS
BINLOG MONITOR
REPLICATION REPLICA ADMIN
REPLICATION SLAVE ADMIN
REPLICA MONITOR
SHOW SLAVE STATUS
SHOW REPLICA STATUS
SHOW RELAYLOG EVENTS
BINLOG
CHANGE MASTER TO
START ALL REPLICAS
START ALL SLAVES
START REPLICA
START SLAVE
STOP ALL REPLICAS
STOP ALL SLAVES
STOP REPLICA
STOP SLAVE
gtid_cleanup_batch_size
gtid_ignore_duplicates
gtid_pos_auto_engines
gtid_slave_pos
gtid_strict_mode
init_slave
relay_log_purge
relay_log_recovery
replicate_events_marked_for_skip
replicate_do_db
replicate_do_table
replicate_ignore_db
replicate_ignore_table
replicate_wild_do_table
replicate_wild_ignore_table
read_binlog_speed_limit
slave_compressed_protocol
slave_ddl_exec_mode
slave_domain_parallel_threads
slave_exec_mode
slave_max_allowed_packet
slave_net_timeout
slave_parallel_max_queued
slave_parallel_mode
slave_parallel_threads
slave_parallel_workers
slave_run_triggers_for_rbr
slave_sql_verify_checksum
slave_transaction_retry_interval
slave_type_conversions
sync_master_info
sync_relay_log
sync_relay_log_info
REPLICATION SLAVE ADMIN
REPLICATION REPLICA ADMIN
REPLICATION REPLICA ADMIN
SET USER
SLAVE MONITOR
SHOW SLAVE STATUS
SHOW REPLICA STATUS
SHOW RELAYLOG EVENTS
SUPER
SUPER
MariaDB Replication
MariaDB Privileges Reference
BINLOG ADMIN
PURGE BINARY LOGS
SET
binlog_annotate_row_events
binlog_cache_size
binlog_commit_wait_count
binlog_commit_wait_usec
binlog_direct_non_transactional_updates
binlog_file_cache_size
binlog_format
binlog_row_image
binlog_row_metadata
binlog_stmt_cache_size
expire_logs_days
log_bin_compress
log_bin_compress_min_len
log_bin_trust_function_creators
max_binlog_cache_size
max_binlog_stmt_cache_size
max_binlog_size
sql_log_bin
sync_binlog
BINLOG MONITOR
grant/#replication-client
BINLOG MONITOR
SHOW BINLOG EVENTS
SHOW BINLOG STATUS
SHOW BINARY LOGS
SHOW MASTER STATUS
BINLOG REPLAY
BINLOG
mariadb-binlog
secure_timestamp
BINLOG
gtid_domain_id
gtid_seq_no
pseudo_thread_id
server_id
CONNECTION ADMIN
connect_timeout
disconnect_on_expired_password
extra_max_connections
init_connect
max_connections
max_connect_errors
max_password_errors
proxy_protocol_networks
secure_auth
slow_launch_time
thread_pool_exact_stats
thread_pool_dedicated_listener
thread_pool_idle_timeout
thread_pool_max_threads
thread_pool_min_threads
thread_pool_mode
thread_pool_oversubscribe
thread_pool_prio_kickup_timer
thread_pool_priority
thread_pool_size
thread_pool_stall_limit
FEDERATED ADMIN
CREATE SERVER
ALTER SERVER
DROP SERVER
READ_ONLY ADMIN
read_only
DROP TRIGGER
read_only
START TRANSACTION READ WRITE
read_only
read_only
REPLICATION CLIENT
BINLOG MONITOR
BINLOG MONITOR
SHOW BINLOG EVENTS
SHOW BINLOG STATUS
SHOW BINARY LOGS
SHOW MASTER STATUS
SHOW REPLICA HOSTS
SHOW SLAVE HOSTS
gtid_binlog_state
gtid_domain_id
master_verify_checksum
server_id
REPLICATION REPLICA
REPLICATION SLAVE
REPLICATION SLAVE
REPLICATION REPLICA
REPLICATION REPLICA ADMIN
REPLICA MONITOR
SHOW BINLOG EVENTS
BINLOG MONITOR
REPLICATION REPLICA ADMIN
REPLICA MONITOR
SHOW SLAVE STATUS
SHOW REPLICA STATUS
SHOW RELAYLOG EVENTS
BINLOG
mariadb-binlog
gtid_cleanup_batch_size
gtid_ignore_duplicates
gtid_pos_auto_engines
gtid_slave_pos
gtid_strict_mode
init_slave
relay_log_purge
relay_log_recovery
replicate_events_marked_for_skip
replicate_do_db
replicate_do_table
replicate_ignore_db
replicate_ignore_table
replicate_wild_do_table
replicate_wild_ignore_table
read_binlog_speed_limit
slave_compressed_protocol
slave_ddl_exec_mode
slave_domain_parallel_threads
slave_exec_mode
slave_max_allowed_packet
slave_net_timeout
slave_parallel_max_queued
slave_parallel_mode
slave_parallel_threads
slave_parallel_workers
slave_run_triggers_for_rbr
slave_sql_verify_checksum
slave_transaction_retry_interval
slave_type_conversions
sync_master_info
sync_relay_log
sync_relay_log_info
REPLICATION SLAVE ADMIN
REPLICATION REPLICA ADMIN
REPLICATION REPLICA ADMIN
SET USER
SUPER
MariaDB Replication
binlog_row_metadata
SHOW BINLOG STATUS
SHOW BINLOG EVENTS
SHOW BINARY LOGS
SHOW MASTER STATUS
binlog_annotate_row_events
binlog_cache_size
binlog_commit_wait_count
binlog_commit_wait_usec
binlog_direct_non_transactional_updates
binlog_file_cache_size
binlog_format
binlog_row_image
binlog_row_metadata
binlog_stmt_cache_size
expire_logs_days
log_bin_compress
log_bin_compress_min_len
log_bin_trust_function_creators
max_binlog_cache_size
max_binlog_stmt_cache_size
max_binlog_size
sql_log_bin
sync_binlog
BINLOG
mariadb-binlog
secure_timestamp
BINLOG
gtid_domain_id
gtid_seq_no
pseudo_thread_id
server_id
gtid_binlog_state
gtid_domain_id
master_verify_checksum
server_id
BINLOG
mariadb-binlog
CHANGE MASTER TO
SHOW ALL REPLICAS STATUS
gtid_cleanup_batch_size
gtid_ignore_duplicates
gtid_pos_auto_engines
gtid_slave_pos
gtid_strict_mode
init_slave
relay_log_purge
relay_log_recovery
replicate_events_marked_for_skip
replicate_do_db
replicate_do_table
replicate_ignore_db
replicate_ignore_table
replicate_wild_do_table
replicate_wild_ignore_table
read_binlog_speed_limit
slave_compressed_protocol
slave_ddl_exec_mode
slave_domain_parallel_threads
slave_exec_mode
slave_max_allowed_packet
slave_net_timeout
slave_parallel_max_queued
slave_parallel_mode
slave_parallel_threads
slave_parallel_workers
slave_run_triggers_for_rbr
slave_sql_verify_checksum
slave_transaction_retry_interval
slave_type_conversions
sync_master_info
sync_relay_log
sync_relay_log_info
ALTER TABLE
CREATE INDEX
DROP INDEX
OPTIMIZE TABLE
Temporal Data Tables
system-versioned tables
application-time period tables
DROP TABLE
ANALYZE TABLE
INSERT ... RETURNING
REPLACE ... RETURNING
SELECT
SELECT
CREATE DATABASE
ALTER DATABASE
ALTER TABLE IF EXISTS ....
ALTER TABLE ... RENAME INDEX
ALTER TABLE ... RENAME COLUMN
application-time period tables
JSON_ARRAYAGG()
JSON_OBJECTAGG()
OVERLAPS()
INET6
TIMESTAMP
DATETIME
TIME
SHOW CREATE TABLE
DESCRIBE
information_schema.COLUMNS.COLUMN_TYPE
security
require secure connections
require_secure_transport
performance_schema.threads table
SHOW BINLOG STATUS
SHOW BINARY LOGS
SHOW MASTER STATUS
BINLOG ADMIN
binlog_annotate_row_events
binlog_cache_size
binlog_commit_wait_count
binlog_commit_wait_usec
binlog_direct_non_transactional_updates
binlog_file_cache_size
binlog_format
binlog_row_image
binlog_row_metadata
binlog_stmt_cache_size
expire_logs_days
log_bin_compress
log_bin_compress_min_len
log_bin_trust_function_creators
max_binlog_cache_size
max_binlog_stmt_cache_size
max_binlog_size
sql_log_bin
sync_binlog
BINLOG REPLAY
gtid_domain_id
gtid_seq_no
pseudo_thread_id
server_id
connect_timeout
disconnect_on_expired_password
extra_max_connections
init_connect
max_connections
max_connect_errors
max_password_errors
proxy_protocol_networks
secure_auth
slow_launch_time
thread_pool_exact_stats
thread_pool_dedicated_listener
thread_pool_idle_timeout
thread_pool_max_threads
thread_pool_min_threads
thread_pool_mode
thread_pool_oversubscribe
thread_pool_prio_kickup_timer
thread_pool_priority
thread_pool_size
thread_pool_stall_limit
CREATE SERVER
ALTER SERVER
DROP SERVER
read_only
read_only
read_only
read_only
SHOW REPLICA HOSTS
SHOW SLAVE HOSTS
gtid_binlog_state
gtid_domain_id
master_verify_checksum
server_id
BINLOG
mariadb-binlog
CHANGE MASTER TO
SHOW ALL REPLICAS
SHOW RELAYLOG EVENTS
SHOW REPLICA STATUS
SHOW SLAVE STATUS
START REPLICA
STOP REPLICA
STOP SLAVE
gtid_cleanup_batch_size
gtid_ignore_duplicates
gtid_pos_auto_engines
gtid_slave_pos
gtid_strict_mode
init_slave
relay_log_purge
relay_log_recovery
replicate_events_marked_for_skip
replicate_do_db
replicate_do_table
replicate_ignore_db
replicate_ignore_table
replicate_wild_do_table
replicate_wild_ignore_table
read_binlog_speed_limit
slave_compressed_protocol
slave_ddl_exec_mode
slave_domain_parallel_threads
slave_exec_mode
slave_max_allowed_packet
slave_net_timeout
slave_parallel_max_queued
slave_parallel_mode
slave_parallel_threads
slave_parallel_workers
slave_run_triggers_for_rbr
slave_sql_verify_checksum
slave_transaction_retry_interval
slave_type_conversions
sync_master_info
sync_relay_log
sync_relay_log_info
HashiCorp Vault
data-at-rest encryption
Performance Schema
events_statements_summary_by_program
events_transactions_current
events_transactions_history
events_transactions_history_long
events_transactions_summary_by_account_by_event_name
events_transactions_summary_by_host_by_event_name
events_transactions_summary_by_thread_by_event_name
events_transactions_summary_by_user_by_event_name
events_transactions_summary_global_by_event_name
global_status
memory_summary_by_account_by_event_name
memory_summary_by_host_by_event_name
memory_summary_by_thread_by_event_name
memory_summary_by_user_by_event_name
memory_summary_global_by_event_name
metadata_locks
prepared_statements_instances
replication_applier_configuration
replication_applier_status
replication_applier_status_by_coordinator
replication_applier_status_by_worker
replication_connection_configuration
session_status
status_by_account
status_by_host
status_by_thread
status_by_user
table_handles
user_variables_by_thread
variables_by_thread
Information Schema
information_schema.SYSTEM_VARIABLES
THREAD_POOL_GROUPS
THREAD_POOL_QUEUES
THREAD_POOL_STATS
THREAD_POOL_WAITS
information_schema.INNODB_TABLESPACES_SCRUBBING
Information Schema
thread_pool_stall_limit
thread_pool_oversubscribe
Information Schema
THREAD_POOL_GROUPS
THREAD_POOL_QUEUES
THREAD_POOL_STATS
THREAD_POOL_WAITS
JSON
GEOMETRY
mariadb
mariadbd
mariadb-plugin
mariadb-upgrade
mariadb-waitpid
mariadb-admin
mariadb-binlog
mariadb-check
mariadb-dump
mariadb-import
mariadb-show
mariadb-slap
START SLAVE
START REPLICA
STOP SLAVE
STOP REPLICA
RESET SLAVE
RESET REPLICA
SHOW SLAVE HOSTS
SHOW REPLICA HOSTS
PURGE BINARY LOGS

This page is: Copyright © 2025 MariaDB. All rights reserved.

wsrep_strict_ddl
wsrep_OSU_method
wsrep_provider_options