Changes and Improvements in MariaDB 10.5

You are viewing an old version of this article. View the current version here.

Do not use beta releases in production!

MariaDB 10.5 is the current major development version. MariaDB 10.4 is currently stable and feature-complete, so new features are going into 10.5.

Upgrading

Implemented Features

Binaries

  • All binaries previously beginning with mysql now begin with mariadb, with symlinks for the corresponding mysql command. (MDEV-21303)

Syntax

JSON

Storage Engines

  • The S3 storage engine allows one to archive MariaDB tables in Amazon S3, or any third-party public or private cloud that implements S3 API.
  • Partitioned S3 tables are now discoverable. This means that if you create a partitioned S3 table, both the partitioned table and it's partitions can be directly used by another server who has access to the S3 storage.

Privileges

  • Split SUPER privilege to smaller privileges (MDEV-21743). New privileges were added so that more fine grained tuning of what each user can do can be applied:
    • BINLOG ADMIN
    • BINLOG REPLAY
    • CONNECTION ADMIN
    • FEDERATED ADMIN
    • READ_ONLY ADMIN
    • REPLICATION MASTER ADMIN
    • REPLICATION SLAVE ADMIN
    • SET USER
  • The REPLICATION CLIENT privilege was renamed to BINLOG MONITOR. The old syntax is understood for compatibility (MDEV-21743).
  • The SHOW MASTER STATUS statement was renamed to SHOW BINLOG STATUS (MDEV-21743). The old syntax is understood for compatibility.
  • A number of statements changed the privileges that they require. The old privileges were historically inappropriately chosen in the upstream. 10.5.2 fixes this problem. Note, these changes are incompatible to previous versions. A number of GRANT commands might be needed after upgrade.
    • SHOW BINLOG EVENTS now requires the BINLOG MONITOR privilege (requred REPLICATION SLAVE prior to 10.5.2).
    • SHOW SLAVE HOSTS now requires the REPLICATION MASTER ADMIN privilege (required REPLICATION SLAVE prior to 10.5.2).
    • SHOW SLAVE STATUS now requires the REPLICATION SLAVE ADMIN or the SUPER privilege (required REPLICATION CLIENT or SUPER prior to 10.5.2).
    • SHOW RELAYLOG EVENTS now requires the REPLICATION SLAVE ADMIN privilege (required REPLICATION SLAVE prior to 10.5.2).
  • In order to help the server understand which version a privilege record was written by, the mysql.global_priv.priv field contains a new JSON field, version_id (MDEV-21704)
  • SHOW PRIVILEGES now correctly lists the Delete history privilege, rather than displaying it as Delete versioning rows. (MDEV-20382)

Thread Pool

InnoDB

Performance Schema

  • Merge 5.7 P_S transaction instrumentation and tables (MDEV-16435)
  • Merge 5.7 P_S memory instrumentation and tables (MDEV-16431)
  • Merge 5.7 P_S mdl instrumentation and tables (MDEV-16432)
  • Merge 5.7 P_S sxlocks instrumentation and tables (MDEV-16436)
  • Merge 5.7 P_S user variables instrumentation and tables (MDEV-16439)
  • Merge 5.7 P_S [show] status instrumentation and tables (MDEV-16438)
  • Merge 5.7 P_S ps instrumentation and tables (MDEV-16433)
  • Merge 5.7 P_S sp instrumentation and tables (MDEV-16434)

Performance improvements

  • Speed up binary row logging code
  • Range optimizer speedups. Removed double calls to records_in_range() for some cases.
  • Costs for using MEMORY tables updated to be more accurate
  • Fixed that 'ref' access is preferred over 'range' for the same index.

Galera and Replication

Binary Log

Query Optimizer

  • ANALYZE for statements is improved, now it also shows the time spent checking the WHERE clause and doing other auxiliary operations (MDEV-20854)
  • Inferred IS NOT NULL predicates can be used by the range optimizer (MDEV-15777)
  • Allow packed values of non-sorted fields in the sort buffer (MDEV-21263)
  • Allow packed sort keys in sort buffer (MDEV-21580)

General

PCRE (Perl Compatible Regular Expressions)

Compatibility

Variables

List of All MariaDB 10.5 Releases

DateReleaseStatusRelease NotesChangelog
26 Mar 2020MariaDB 10.5.2BetaRelease NotesChangelog
14 Feb 2020MariaDB 10.5.1BetaRelease NotesChangelog
3 Dec 2019MariaDB 10.5.0AlphaRelease NotesChangelog

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.