Stabile Version von MariaDB 10.5

Nach einem Jahr Entwicklung und vier Vorabveröffentlichungen bereit erste stabile Veröffentlichung eines neuen DBMS-Zweigs Maria DB 10.4, innerhalb dessen ein Zweig von MySQL entwickelt wird, der die Abwärtskompatibilität gewährleistet und anders Integration zusätzlicher Speicher-Engines und erweiterter Funktionen. Die Unterstützung für die neue Niederlassung erfolgt für 5 Jahre, bis Juni 2025.

Die MariaDB-Entwicklung wird von der unabhängigen MariaDB Foundation überwacht und folgt einem völlig offenen und transparenten Entwicklungsprozess, der unabhängig von einzelnen Anbietern ist. MariaDB wird anstelle von MySQL in vielen Linux-Distributionen (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) mitgeliefert und wurde in so großen Projekten wie implementiert Wikipedia , Google Cloud SQL и Nimbuzz.

Taste Verbesserungen Maria DB 10.5:

  • Speicher-Engine hinzugefügt S3, mit dem Sie MariaDB-Tabellen auf Amazon S3 oder einem anderen öffentlichen oder privaten Cloud-Speicher hosten können, der die S3-API unterstützt. Das Platzieren sowohl regulärer als auch partitionierter Tabellen in S3 wird unterstützt. Wenn partitionierte Tabellen in der Cloud abgelegt werden, können sie direkt verwendet werden, auch von einem anderen Server aus, der Zugriff auf den S3-Speicher hat.
  • Speicher-Engine hinzugefügt ColumnStore, das an Spalten gebundene Daten speichert und verwendet massiv parallel verteilte Architektur. Die Engine basiert auf den Entwicklungen des MySQL-Speichers InfiniDB und dient der Organisation der Verarbeitung und Ausführung analytischer Abfragen über große Datenmengen (Data Warehouse).
    ColumnStore speichert Daten nicht Zeile für Zeile, sondern nach Spalten, wodurch Sie die Leistung der Gruppierung nach Spalten aus einer großen Datenbank, einschließlich Petabytes an Daten, optimieren können. Unterstützt werden lineare Skalierung, komprimierte Datenspeicherung, vertikale und horizontale Partitionierung sowie die effiziente Ausführung konkurrierender Anforderungen.

  • Alle ausführbaren Dateien, die mit dem Wort „mysql“ beginnen, wurden umbenannt, um das Wort „mariadb“ zu verwenden. Die alten Namen werden in Form symbolischer Links gespeichert.
  • Neuer Datentyp hinzugefügt INET6 zum Speichern von IPv6-Adressen.
  • Es wurde daran gearbeitet, Berechtigungen in kleinere Komponenten aufzuteilen. Anstelle des allgemeinen SUPER-Privilegs wird eine Reihe selektiver Privilegien „BINLOG ADMIN“ vorgeschlagen,
    „BINLOG REPLAY“
    „VERBINDUNGSADMIN“
    „VERBUND-ADMIN“
    „READ_ONLY ADMIN“,
    „REPLIKATIONS-MASTER-ADMIN“
    „REPLICATION SLAVE ADMIN“ und
    „BENUTZER EINSTELLEN“.

  • Das Privileg „REPLICATION CLIENT“ wurde in „BINLOG MONITOR“ und der Ausdruck „SHOW MASTER STATUS“ in „SHOW BINLOG STATUS“ umbenannt. Die Umbenennung verdeutlicht das Verhalten und ist nicht mit politischer Korrektheit verbunden, das Projekt verzichtet nicht auf die Begriffe Master/Slave und hat sogar neue Privilegien „MASTER ADMIN“ und „SLAVE ADMIN“ hinzugefügt. Gleichzeitig wurde dem SQL-Ausdruck ein neuer Schlüssel „REPLICA“ hinzugefügt, der ein Synonym für „SLAVE“ ist.
  • Für einige Ausdrücke wurden die für deren Ausführung erforderlichen Berechtigungen geändert. „SHOW BINLOG EVENTS“ erfordert jetzt „BINLOG MONITOR“-Berechtigungen anstelle von „REPLICATION SLAVE“, „SHOW SLAVE HOSTS“ erfordert „REPLICATION MASTER ADMIN“-Berechtigungen anstelle von „REPLICATION SLAVE“, „SHOW SLAVE STATUS“ erfordert „REPLICATION SLAVE ADMIN“ oder „SUPER“ statt „REPLICATION CLIENT“, „SHOW RELAYLOG EVENTS“ erfordert „REPLICATION SLAVE ADMIN“-Rechte statt „REPLICATION SLAVE“.
  • Hinzugefügte Designs "EINFÜGEN...ZURÜCKGEBEN"Und"ERSETZEN ... ZURÜCKGEBEN" und gibt eine Liste der eingefügten/ersetzten Einträge im Formular zurück, als ob die Werte mit einem SELECT-Ausdruck zurückgegeben würden (ähnlich wie "DELETE ... RETURNING").

    IN t2 WERTE EINFÜGEN (1,'Hund'),(2,'Löwe'),(3,'Tiger'),(4,'Leopard')
    RETURNING id2,id2+id2,id2&id2,id2||id2;
    +——+———+———+———-+
    | id2 | id2+id2 | id2&id2 | id2||id2 |
    +——+———+———+———-+
    | 1 | 2 | 1 | 1 |
    | 2 | 4 | 2 | 1 |
    | 3 | 6 | 3 | 1 |
    | 4 | 8 | 4 | 1 |
    +——+———+———+———-+

  • Ausdrücke hinzugefügt „AUSSER ALLE"Und"ALLES ÜBERSCHNEIDEN» um das Ergebnis durch einen bestimmten Satz von Werten auszuschließen/ergänzen.
  • Es ist jetzt möglich, Kommentare innerhalb der Blöcke „CREATE DATABASE“ und „ALTER DATABASE“ anzugeben.
  • Konstrukte zum Umbenennen von Indizes und Spalten hinzugefügt "TABELLE ÄNDERN ... INDEX / SCHLÜSSEL UMBENENNEN" Und "TABELLE ÄNDERN ... SPALTE UMBENENNEN«.
  • In den Operationen „ALTER TABLE“ und „RENAME TABLE“ wurde Unterstützung für die Bedingung „IF EXISTS“ hinzugefügt, um die Operation nur dann auszuführen, wenn die Tabelle vorhanden ist;
  • Für Indizes in „CREATE TABLE“ das Attribut „SICHTBAR«.
  • Ausdruck „CYCLE“ hinzugefügt, um rekursive Schleifen zu identifizieren CTE.
  • Funktionen hinzugefügt JSON_ARRAYAGG и JSON_OBJECTAGG um ein Array oder JSON-Objekt mit den Werten der angegebenen Spalte zurückzugeben.
  • Dienstinformationstabellen (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS und THREAD_POOL_WAITS) für den Thread-Pool (thread_pool) hinzugefügt.
  • Der ANALYZE-Ausdruck wird erweitert, um die Zeit anzuzeigen, die für die Überprüfung des WHERE-Blocks und die Durchführung von Hilfsoperationen aufgewendet wurde.
  • Der Bereichsverarbeitungsoptimierer berücksichtigt die „IS NOT NULL“-Merkmale
  • Die Größe der temporären Dateien, die beim Sortieren mit den Typen VARCHAR, CHAR und BLOB verwendet werden, wurde erheblich reduziert.
  • В Binärprotokoll, das zum Organisieren der Replikation verwendet wird, wurden neue Metadatenfelder hinzugefügt, darunter Primärschlüssel, Spaltenname, Zeichensatz und Geometrietyp. Das Dienstprogramm mariadb-binlog und die Befehle „SHOW BINLOG EVENTS“ und „SHOW RELAYLOG EVENTS“ ermöglichen die Anzeige von Replikationsflags.
  • Design TROPFENTABELLE jetzt ist es sicher entfernt Tabellen, die in der Speicher-Engine verbleiben, auch wenn keine „.frm“- oder „.par“-Dateien vorhanden sind.
  • Implementierung einer hardwarebeschleunigten Version der crc32()-Funktion für AMD64-, ARMv8- und POWER 8-CPUs.
  • Einige Standardeinstellungen wurden geändert. innodb_encryption_threads wurde auf 255 und max_sort_length von 4 auf 8 erhöht.
  • Es werden zahlreiche Leistungsoptimierungen für die InnoDB-Engine vorgestellt.
  • Dem synchronen Multi-Master-Replikationsmechanismus von Galera wurde volle Unterstützung hinzugefügt GTID (Globale Transaktions-ID), Transaktionskennungen, die allen Clusterknoten gemeinsam sind.
  • Der Übergang zu einer neuen Zweigstelle der Bibliothek ist erfolgt PCRE2 (Perl-kompatible reguläre Ausdrücke) anstelle der klassischen PCRE 8.x-Serie.
  • Für die Verbindung zum MariaDB- und MySQL-DBMS aus Programmen in Python und C wurden neue Versionen von Kabelbäumen vorgeschlagen: MariaDB Connector/Python 1.0.0 и MariaDB Connector/C 3.1.9. Die Python-Bindung entspricht der Python DB API 2.0, ist in C geschrieben und verwendet die Connector/C-Bibliothek, um eine Verbindung zum Server herzustellen.

Source: opennet.ru

Kommentar hinzufügen