MariaDB 10.4 stable release

After a year of development and six pre-releases prepared by first stable release of a new DBMS branch MariaDB 10.4, within which a branch from MySQL is being developed that maintains backward compatibility and different integration of additional storage engines and advanced features. The new branch will be supported for 5 years, until June 2024.

MariaDB development is overseen by the independent MariaDB Foundation, following a fully open and transparent development process independent of individual vendors. MariaDB is shipped in place of MySQL in many Linux distributions (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) and has been implemented in large projects such as Wikipedia, Google Cloud SQL ΠΈ Nimbuzz.

Key improvements MariaDB 10.4:

  • Includes synchronous multi-master replication technology Galera 4, which allows an active-active multi-master topology that allows reads and writes for any node. With synchronous replication, all nodes always contain up-to-date data, i.e. the absence of lost transactions is guaranteed, since the transaction is fixed only after the data has been distributed to all nodes. Replication is performed in parallel mode, at the row level, with the transfer of only information about changes;
  • On Unix-like systems, the authentication plugin is enabled by default. unix_socket, which allows you to use the accounts present in the system to connect to the DBMS using a local unix socket;
  • Added by opportunity assigning a user password lifetime, after which the password is marked as expired. To set the password validity period in the "CREATE USER" and "ALTER USER" operations, the expression "PASSWORD EXPIRE INTERVAL N DAY" has been added;
  • Added support blocking DBMS users through the "ACCOUNT LOCK" statement in the "CREATE USER" and "ALTER USER" operations;
  • Significantly accelerated the execution of privilege checking in configurations with a large number of users or access rules;
  • discontinued using the mysql.user and mysql.host tables. The mysql.global_priv table is now used to store accounts and global privileges;
  • Π’ plugins authentication added support for the expression "SET PASSWORD";
  • Added by the ability to use more than one authentication plugin for each account, which can be useful for gradually transitioning users to the plugin ed25519. When creating the root@localhost user with the mysql_install_db script, two authentication plugins are now enabled by default - unix_socket and mysql_native_password;
  • InnoDB storage implements the operation of instant removal of columns (ALTER TABLE ... DROP COLUMN ... ALGORITHM=INSTANT) and reordering of columns. Reduced the size of the initial operation rollback log (redo log). Added key rotation support for innodb_encrypt_log. Implemented checksum verification algorithm
    innodb_checksum_algorithm=full_crc32. Provided instant VARCHAR type expansion and text encoding change for non-indexed columns;

  • Improved optimizer. Added the ability to trace the optimizer, enabled through the system variable optimizer-trace... Default included maintaining statistics independent of storage engines.
    There are two new use_stat_tables modes - COMPLEMENTARY_FOR_QUERIES and PREFERABLY_FOR_QUERIES. Enabled optimize_join_buffer_size mode. Added new flags rowid_filter and condition_pushdown_from_having;

  • Support for system versioned tables, which not only store the current slice of data, but also store information about all previously made changes, has been expanded operations with time ranges;
  • Added new "FLUSH SSL" command to reload SSL certificates without restarting the server;
  • In the operations "INSTALL PLUGIN", "UNINSTALL PLUGIN" and "UNINSTALL SONAME" added support for the expressions "IF NOT EXISTS" and "IF EXISTS";
  • Crash-resistant system tables are proposed, for storage of which the engine is used Aria;
  • The transition to the use of the C ++ 11 standard has been made (atomic operations are involved);
  • Significantly improved the performance of the "Collation" locale properties for Unicode, which allow you to set sorting rules and collation methods based on the meaning of characters;
  • Added plugin for defining custom field types;
  • Added support for windowed UDF functions (User-Defined Functions);
  • In the "FLUSH TABLES" operation implemented "BACKUP LOCK" mode, which can be used while backing up database files;
  • Added by support for server commands starting with the name mariadb as alternatives to commands starting with "mysql" (for example, mariadump instead of mysqldump).

Source: opennet.ru

Add a comment