Changes and Improvements in MariaDB 10.11
The most recent release of MariaDB 10.11 is:MariaDB 10.11.11 Stable (GA) Download NowAlternate download from mariadb.org
MariaDB 10.11 is the previous long-term maintenance release series, maintained until February 2028.
Upgrading
New Features & Improvements
This list includes features from the short-term releases MariaDB 10.7, MariaDB 10.8, MariaDB 10.9 and MariaDB 10.10.
Authentication
Separate SUPER and READ ONLY ADMIN privileges (MDEV-29596)
bind_address now accepts a comma-separated list of addresses to bind to (MDEV-24377)
password_reuse_check plugin is a new password validation plugin that prevents the new password from being the same as the one being used during the configurable retention period. (MDEV-9245, MariaDB 10.7)
Optimizer
Make ANALYZE FORMAT=JSON show time spent in the query optimizer (MDEV-28926)
Improve optimization of joins with many tables, including eq_ref tables (MDEV-28852, MariaDB 10.10)
Table elimination does not work across derived tables (MDEV-26278, MariaDB 10.10)
Histograms in the statistics tables are more precise and stored as JSON, not binary (MDEV-21130, MDEV-26519, blog post, MariaDB 10.8).
Improve simple multibyte collation performance on the ASCII range (MDEV-26572, MariaDB 10.7).
Descending Indexes
Individual columns in the index can now be explicitly sorted in the ascending or descending order. This can be useful for optimizing certain ORDER BY cases (MDEV-13756, MDEV-26938, MDEV-26939, MDEV-26996, MariaDB 10.8).
Replication
Change defaults for CHANGE MASTER TO so that GTID-based replication is used by default if master supports it (MDEV-19801, MariaDB 10.10)
Added global.slave_max_statement_time system variable for SQL thread to limit maximum execution time per query replicated (MDEV-27161, MariaDB 10.10)
Deprecate MASTER_USE_GTID=Current_Pos to favor new MASTER_DEMOTE_TO_SLAVE option (MDEV-20122, MariaDB 10.10)
Implement the --do-domain-ids, --ignore-domain-ids, and --ignore-server-ids options for mariadb-binlog (MDEV-20119, MariaDB 10.9)
Semisync-slave server recovery is extended to work on new server_id server (MDEV-27342, MariaDB 10.9)
mariadb-binlog --stop-never --raw now flushes the result file to disk after each processed event so the file can be listed with the actual bytes (MDEV-14608, MariaDB 10.9)
Normally, ALTER TABLE gets fully executed on the primary first and only then it is replicated and starts executing on replicas. With this feature
ALTER TABLE
gets replicated and starts executing on replicas when it starts executing on the primary, not when it finishes. This way the replication lag caused by a heavyALTER TABLE
can be completely eliminated (MDEV-11675, MariaDB 10.8).Multi-source replication supports MySQL-style CHANNEL syntax (MDEV-26307, MariaDB 10.7)
mysqlbinlog GTID support
mariadb-binlog (or
mysqlbinlog
as it was called back when the task was created) now supports both filtering events by GTID ranges through--start-position
and--stop-position,
and validating a binary log's ordering of GTIDs through--gtid-strict-mode
(MDEV-4989, MariaDB 10.8).
Galera
Implement a method to add IPs to allowlist for Galera Cluster node addresses that can make SST/IST requests (MDEV-27246, MariaDB 10.10)
JSON file interface to wsrep node state / SST progress logging (MDEV-26971, MariaDB 10.9)
JSON
JSON_OVERLAPS function (MDEV-27677, MariaDB 10.9)
Implement range notation for JSONPath (MDEV-27911, MariaDB 10.9)
Support JSONPath negative index (MDEV-22224, MariaDB 10.9)
JSON_EQUALS function to check for equality between JSON objects (MDEV-23143, MariaDB 10.7).
JSON_NORMALIZE function, which recursively sorts keys and removes spaces (MDEV-16375, MariaDB 10.7)
UUID
New UUID data type (MDEV-4958, MariaDB 10.7)
SHOW ANALYZE FORMAT=JSON
Extend SHOW EXPLAIN to support SHOW ANALYZE [FORMAT=JSON] (MDEV-27021, MariaDB 10.9)
Add EXPLAIN FOR CONNECTION syntax support to SHOW EXPLAIN (MDEV-10000, MariaDB 10.9)
Information Schema
Performance Issues reading the Information Schema Parameters table (MDEV-29104)
Full table scan in the Information Schema Parameters and Information Schema Routines tables (MDEV-20609)
System versioning
System versioning setting, system_versioning_insert_history, to allow history modification (MDEV-16546)
mariadb-dump: dump and restore historical data (MDEV-16029)
Add option to dump system versioned table as of specified timestamp (MDEV-16355, MariaDB 10.7).
InnoDB
InnoDB performance improvements (MDEV-27557, MDEV-28185, MDEV-27767, MDEV-28313, MDEV-28137, MDEV-28465, MDEV-26789, MariaDB 10.9)
In bulk insert, pre-sort and build indexes one page at a time (MDEV-24621, MariaDB 10.7)
InnoDB Redo Log Improvements
autosize innodb_buffer_pool_chunk_size (MDEV-25342, MariaDB 10.8).
Improve the redo log for concurrency (MDEV-14425, MariaDB 10.8).
Remove FIL_PAGE_FILE_FLUSH_LSN (MDEV-27199, MariaDB 10.8).
UCA14 Collation
Add UCA-14.0.0 collations (MDEV-27009, MariaDB 10.10)
Improve contraction performance in UCA collations (MDEV-27265, MariaDB 10.10)
Improve UCA collation performance for utf8mb3 and utf8mb4 (MDEV-27266, MariaDB 10.10)
Windows
Passwordless login for mariadb root user, for OS admin users (MDEV-26715)
On newer versions of Windows (Windows 10 1903 or later), the
mariadb
client defaults to the utf8mb4 character set. Several problems with Unicode input and output in client were fixed. Command line utilities now accept all Unicode characters in user names, database names, file names etc (in the past, characters were restricted to the current ANSI codepage) (MariaDB 10.8).
Spider Storage Engine
This was mostly internal refactoring work. As a result one can now declare Spider connections using the
REMOTE_SERVER
,REMOTE_DATABASE
, andREMOTE_TABLE
attributes and not abuse theCOMMENT
field for that. This works both for the whole table and per partition (MDEV-5271, MDEV-27106, MariaDB 10.8).
Convert Partitions
ALTER TABLE ... CONVERT PARTITION .. TO TABLE (MDEV-22166, MariaDB 10.7), and
ALTER TABLE ... CONVERT TABLE ... TO PARTITION ... (MDEV-22165) as an easy way to convert tables to partitions and back in one command, instead of a sequence of CREATE/EXCHANGE/DROP (MariaDB 10.7)
Miscellaneous
Add RANDOM_BYTES function (MDEV-25704, MariaDB 10.10)
The INET4 data type (MDEV-23287, MariaDB 10.10)
Re-design the upper level of handling UPDATE and DELETE statements (MDEV-28883, MariaDB 10.10)
Deprecate the DES_ENCRYPT/DECRYPT functions (MDEV-27104, MariaDB 10.10)
Hashicorp Key Management Plugin for implementing encryption using keys stored in the Hashicorp Vault KMS (MDEV-19281, MariaDB 10.9)
Stored procedures already have support for the IN, OUT and INOUT parameter qualifiers. Added as well for stored functions and (IN only) cursors (MDEV-10654). This was a contribution by ManoharKB (MariaDB 10.8).
Add an optional argument to the CRC32() function, as well as the CRC32C() function, which uses the Castagnoli polynomial. (MDEV-27208). Note: The order of the 2-ary arguments was swapped after the preview release:
crc32('MariaDB')=crc32(crc32('Maria'),'DB')
(MariaDB 10.8)my_print_defaults now handles
--default-*
options in exactly the same way as other MariaDB tools (MDEV-26238, MariaDB 10.8).UCA collations are now notably faster (MDEV-27266, MDEV-27265, MariaDB 10.8).
NATURAL_SORT_KEY function (MDEV-4742, MariaDB 10.7).
Five provider plugins (bzip2, lzma, lz4, lzo, snappy) provide compression capabilities to the server and storage engines (MDEV-12933, blog post, MariaDB 10.7).
SFORMAT function for arbitrary text formatting (MDEV-25015, MariaDB 10.7)
GET DIAGNOSTICS supports a new condition property name
ROW_NUMBER
. In multi-row inserts it allows one to retrieve a number of a row that has caused the error (MDEV-10075, MDEV-26611, MariaDB 10.7)
Variables
For a list of all new variables, see System Variables Added in MariaDB 10.11.
Rename slow queries variables (MDEV-7567)
log_slow_min_examined_row_limit (min_examined_row_limit)
log_slow_query (slow_query_log)
log_slow_query_file (slow_query_log_file). This was named log_slow_query_file_name in the MariaDB 10.11.0 preview release.
log_slow_query_time (long_query_time)
replicate_rewrite_db is now a system variable, no longer just an option (MDEV-15530)
Change default of explicit_defaults_for_timestamp to ON (MDEV-28632, MariaDB 10.10)
--ssl option set as default for mariadb CLI (MDEV-27105, MariaDB 10.10)
Merge (and deprecate) old to old_mode sql variable (MDEV-24920, MariaDB 10.9)
Deprecate the keep_files_on_create variable (MDEV-23570, MariaDB 10.8).
Deprecate wsrep_replicate_myisam (MDEV-24947, MariaDB 10.7)
Deprecate wsrep_strict_ddl (MDEV-24843, MariaDB 10.7)
InnoDB Variables
innodb_write_io_threads and innodb_read_io_threads are now dynamic, and their values can be changed without restarting the server (MDEV-11026)
Removed innodb_version (MDEV-28554, MariaDB 10.10)
Deprecated innodb_prefix_index_cluster_optimization (MariaDB 10.10)
Deprecated innodb_change_buffering (MariaDB 10.9)
innodb_disallow_writes removed (MDEV-25975, MariaDB 10.9)
innodb_log_file_size is now dynamic (MDEV-27812, MariaDB 10.9)
Spider Variables
The following deprecated variables have been removed (MariaDB 10.10):
Security Vulnerabilities Fixed in MariaDB 10.11
For a complete list of security vulnerabilities (CVEs) fixed across all versions of MariaDB, see the Security Vulnerabilities Fixed in MariaDB page.
List of All MariaDB 10.11 Releases
Date
Release
Status
Release Notes
Changelog
Last updated
Was this helpful?