Die Version 12.2.2 des MariaDB-Datenbanksystems wurde veröffentlicht und gilt als erstes stabiles Release der Reihe 12.2. Die Serie MariaDB 12.2 wird als Rolling-Release eingestuft, entwickelt kontinuierlich neue Funktionen und ersetzt die Serie MariaDB 12.1. Gleichzeitig wurde die Version 12.3.1 mit einer neuen Implementierung des Binlogs veröffentlicht, die den Status eines Kandidaten fĂŒr zukĂŒnftige LTS-Releases hat. Die Serie MariaDB 12.2 wird bis zur Veröffentlichung von 12.3.2 unterstĂŒtzt.
Das Projekt MariaDB entwickelt einen Fork von MySQL, der die RĂŒckwĂ€rtskompatibilitĂ€t bewahrt und sich durch die Integration zusĂ€tzlicher Speicher-Engines und erweiterter Möglichkeiten auszeichnet. Die Entwicklung von MariaDB wird von der unabhĂ€ngigen Organisation MariaDB Foundation gemÀà einem offenen und transparenten Entwicklungsprozess ĂŒberwacht, der nicht von einzelnen Herstellern abhĂ€ngig ist. MariaDB wird anstelle von MySQL in vielen Linux-Distributionen (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) bereitgestellt und ist in groĂen Projekten wie Wikipedia, Google Cloud SQL und Nimbuzz implementiert.
Unter den Ănderungen in der Serie MariaDB 12.2:
- Im KompatibilitÀtsmodus mit der Oracle-Datenbank wurden die Funktionen TO_NUMBER (Umwandlung von Zeichenfolgen in Zahlen) und TRUNC (Abschneiden von Datumsangaben, z. B. auf Stunde, Tag, Monat, Jahr) implementiert.
- Bei der DurchfĂŒhrung von TabellenzusammenfĂŒhrungsoperationen (JOIN) wurde eine Optimierung implementiert, die die Einzigartigkeit der Zeilen in Unterabfragen mit dem Ausdruck âGROUP BYâ berĂŒcksichtigt, um die Anzahl der resultierenden Zeilen (out_rows) genauer vorherzusagen und die Indizes korrekt anzuwenden.
- Neue Optionen zur Steuerung des Optimierers wurden hinzugefĂŒgt: ROWID_FILTER/NO_ROWID_FILTER und INDEX_MERGE/NO_INDEX_MERGE sowie die Möglichkeit, Blocknamen implizit in Abfragen anzugeben (Optimierungsoptionen können gezielt auf Teile von Abfragen angewendet werden, indem sie mit «select#N», wobei N die Blocknummer ist, referenziert werden). Zum Beispiel: «select /*+ JOIN_ORDER(@"select#2" twenty,ten) */ âŠÂ».
- Die BeschrĂ€nkungen fĂŒr die Verschachtelungstiefe von Strukturen in Funktionen zur Arbeit mit JSON wurden aufgehoben (die Begrenzung JSON_DEPTH_LIMIT, die zuvor 32 war, wurde entfernt).
- Eine Tabelle TRIGGERED_UPDATE_COLUMNS wurde im Schema INFORMATION_SCHEMA (INFORMATION_SCHEMA.TRIGGERED_UPDATE_COLUMNS) hinzugefĂŒgt, die die Spalten anzeigt, die bei der Auslösung eines Triggers geĂ€ndert werden.
- Im Tabellen PARAMETERS im Schema INFORMATION_SCHEMA wurde eine Spalte PARAMETER_DEFAULT implementiert, die Standardwerte fĂŒr die Parameter gespeicherter Prozeduren enthĂ€lt.
- Experimentelle UnterstĂŒtzung fĂŒr den Ausdruck «CREATE GLOBAL TEMPORARY TABLE» zur Erstellung globaler temporĂ€rer Tabellen wurde implementiert. Solche temporĂ€ren Tabellen werden nach Beendigung der Sitzung gelöscht und sind fĂŒr alle Benutzer sichtbar, enthalten jedoch datenindividuelle Informationen fĂŒr jeden Benutzer.
- Im Testmodus wurde eine verbesserte UnterstĂŒtzung fĂŒr die Replikation zwischen Tabellen mit unterschiedlicher Struktur angeboten.
Quelle: opennet.ru
