Die Version MariaDB 12.1.2 wurde veröffentlicht und als erste stabile Version des Zweigs 12.1 markiert. Der Zweig MariaDB 12.1 gehört zu den fortlaufenden Versionen (rolling) und entwickelt die Funktionalität schrittweise weiter, während er den Zweig MariaDB 12.0 ersetzt. Gleichzeitig wurde MariaDB 12.2.1 veröffentlicht, das den Status eines Release-Kandidaten hat. Der Zweig MariaDB 12.1 wird bis zur Veröffentlichung von Version 12.2.2 unterstützt.
Das MariaDB-Projekt ist eine Abspaltung von MySQL, die die Abwärtskompatibilität beibehält und sich durch die Integration zusätzlicher Speicher-Engines und erweiterte Funktionen auszeichnet. Die Entwicklung von MariaDB wird von der unabhängigen Organisation MariaDB Foundation geleitet, die einen offenen und transparenten Entwicklungsprozess pflegt und nicht von einzelnen Anbietern abhängig ist. MariaDB wird in vielen Linux-Distributionen (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) anstelle von MySQL bereitgestellt und ist in großen Projekten wie Wikipedia, Google Cloud SQL und Nimbuzz implementiert.
Änderungen im Zweig MariaDB 12.1:
- Im Aria-Speicher-Engine wurde ein segmentierter Schlüssel-Cache implementiert, bei dem Schlüssel in Gruppen aufgeteilt werden, die in separaten Cache-Segmenten gespeichert sind. Der neue Cache hat die Leistung der parallelen Ausführung von Anfragen durch verschiedene Benutzer erhöht. Die Anzahl der Segmente wird über die Variable aria_pagecache_segments festgelegt, die Werte von 1 (Standard) bis 128 annehmen kann.
- Die Skalierbarkeit von MDL (Metadata Lock) wurde verbessert.
- Die Nutzung von paralleler Replikation bei der asynchronen Replikation von Daten zwischen zwei Galera-Clustern wurde erlaubt.
- Im Audit-Logging-Plugin wurde die Unterstützung für das Puffern von Logeinträgen hinzugefügt. Die Größe des Puffers wird über die Variable server_audit_file_buffer_size festgelegt.
- Die Suchoperationen für Daten des Typs VECTOR wurden um 30-50 % beschleunigt.
- Ein neues Authentifizierungs-Plugin caching_sha2_password wurde hinzugefügt, das den SHA2-Algorithmus anstelle von SHA1 zum Hashing verwendet. Das Plugin ist mit dem gleichnamigen Plugin in MySQL 9.0 kompatibel.
- Im Kompatibilitätsmodus mit Oracle-Datenbanken wurde die Unterstützung für assoziative Arrays (INDEX BY) und die Syntax "( + )" zur Definition von Außenverknüpfungen (outer join) implementiert. Beispiel: SELECT * FROM table1, table2 WHERE table1.rec_num = table2.fk_table1( + ); TYPE type_name TABLE OF rec_type_name INDEX BY idx_type_name;
- Neue Optionen zur Steuerung des Optimierers wurden hinzugefügt: [NO_]JOIN_INDEX, [NO_]GROUP_INDEX, [NO_]ORDER_INDEX, [NO_]INDEX, [NO_]SPLIT_MATERIALIZED, [NO_]DERIVED_CONDITION_PUSHDOWN, [NO_]MERGE.
- Das Tool mariadb-dump hat die Möglichkeit hinzugefügt, Masken (z.B. "database_*") über die Option "-L" (—wildcards) anzugeben.
- Die Anforderung nach Einzigartigkeit von Identifikatoren für Fremdschlüssel (foreign key) im Kontext der gesamten Datenbank wurde entfernt; es genügt die Einzigartigkeit auf Tabellenebene.
- Die Möglichkeit zur Nutzung von funktionsbasierten Indizes wurde hinzugefügt, um die Leistung von GROUP/ORDER BY-Operationen zu verbessern.
- In den Optimierer-Trace-Ergebnissen werden die Definitionen von Tabellen und Ansichten angezeigt.
Quelle: opennet.ru
