Die Datenbank MySQL 9.0.0 ist verfügbar.

Die Oracle Corporation hat einen neuen Branch der Datenbank MySQL 9.0.0 entwickelt. Die Builds des MySQL Community Server 9.0.0 sind für alle gängigen Linux-Distributionen, FreeBSD, macOS und Windows verfügbar. Im Rahmen des im vergangenen Jahr eingeführten Modells zur Erstellung von Releases wird MySQL 9.0 in die "Innovation"-Branches eingeordnet, zu denen auch die bedeutenden zukünftigen Releases MySQL 9.1 und 9.2 gehören werden. Innovation-Branches werden empfohlen für diejenigen, die frühzeitig Zugriff auf neue Funktionen erhalten möchten, sie werden alle drei Monate veröffentlicht und nur bis zur Veröffentlichung des nächsten bedeutenden Releases unterstützt (nach der Veröffentlichung des Branch 9.1 wird die Unterstützung für den Branch 9.0 eingestellt). Etwa ein Jahr später ist ein LTS-Release geplant, das für Implementierungen empfohlen wird, die Vorhersehbarkeit und eine langfristige Stabilität benötigen. Nach dem LTS-Branch wird ein neuer Innovation-Branch — MySQL 10.0 — erstellt.

Die wichtigsten Änderungen in MySQL 9.0:

  • Es wurde die Möglichkeit hinzugefügt, die Ausgabe der Konstruktion "EXPLAIN ANALYZE INTO" im JSON-Format in einer benutzerdefinierten Variablen zu speichern, die dann als Argument in Funktionen zur Arbeit mit JSON verwendet werden kann.

    EXPLAIN ANALYZE FORMAT=JSON INTO @variable select_stmt

  • Es ist erlaubt, die Ausdrücke „CREATE EVENT“, „ALTER EVENT“ und „DROP EVENT“ als parametrisierte Abfragen innerhalb von gespeicherten Prozeduren zu formulieren. Die Erstellung einer parametrierten Abfrage erfolgt mit dem Ausdruck PREPARE, die Ausführung erfolgt mit dem Ausdruck EXECUTE.

    CREATE PROCEDURE sp(n INT)
    BEGIN
    SET @s1 = „CREATE EVENT e ON SCHEDULE EVERY „;
    SET @s2 = „ SECOND
    STARTS CURRENT_TIMESTAMP + INTERVAL 10 SECOND
    ENDS CURRENT_TIMESTAMP + INTERVAL 2 MINUTE
    ON COMPLETION PRESERVE
    DO
    INSERT INTO d.t VALUES ROW(NULL, NOW(), FLOOR(RAND()*100))“;

    SET @s = CONCAT(@s1, n, @s2);
    PREPARE ps FROM @s;
    EXECUTE ps;
    DEALLOCATE PREPARE ps;
    END

  • Zwei neue Systemtabellen wurden hinzugefügt, die Informationen zu Systemvariablen enthalten: variables_metadata — enthält Informationen über Namen, Geltungsbereich, Typen und Wertebereiche aller vom MySQL-Server unterstützten Systemvariablen; global_variable_attributes — enthält die Werte der Attribute, die für globale Variablen wie offline_mode und read_only festgelegt sind.
  • Der zuvor als veraltet erklärte Server-Plugin mysql_native_password, das die Authentifizierung über Passwörter ermöglicht, wurde entfernt. Stattdessen wird empfohlen, auf die Verwendung des Plugins caching_sha2_password umzusteigen, das für die Hashierung den Algorithmus SHA2 anstelle von SHA1 verwendet.
  • 15 Variablen wurden hinzugefügt, um die MLE (Multilingual Engine Component) zu konfigurieren und zu inspizieren, was es ermöglicht, Code in Funktionen und Prozeduren in anderen als SQL-Sprachen zu verwenden.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster