MySQL 9.3.0 Veröffentlichung

Die Firma Oracle hat einen neuen Branch der MySQL-Datenbankversion 9.3.0 erstellt. Die MySQL Community Server 9.3.0-Builds sind fĂŒr alle gĂ€ngigen Linux-Distributionen, FreeBSD, macOS und Windows vorbereitet. GemĂ€ĂŸ dem im Jahr 2023 eingefĂŒhrten neuen Release-Modell wurde MySQL 9.3 zu den 'Innovation'-Branches eingestuft. Die Innovation-Branches werden fĂŒr diejenigen empfohlen, die frĂŒher Zugriff auf neue Funktionen haben möchten, erscheinen alle drei Monate und werden nur bis zur Veröffentlichung des nĂ€chsten bedeutenden Releases unterstĂŒtzt (z. B. nach der Veröffentlichung des Branches 9.3 wird die UnterstĂŒtzung fĂŒr den Branch 9.2 eingestellt). Im Sommer ist die Veröffentlichung eines LTS-Release 9.4 geplant, das fĂŒr Implementierungen empfohlen wird, die Vorhersehbarkeit und langfristige StabilitĂ€t benötigen. Nach dem LTS-Branch wird ein neuer Innovation-Branch – MySQL 10.0 – erstellt.

Wesentliche Änderungen in MySQL 9.3:

  • In das Dienstprogramm mysqldump wurde die Option '—users' hinzugefĂŒgt, um logische Dumps mit Informationen ĂŒber alle Konten zu erstellen, die durch die SQL-Anweisungen 'CREATE USER' und 'GRANT' ausgegeben werden. FĂŒr die EinfĂŒgung der Anweisung 'DROP USER' vor 'CREATE USER' gibt es die Option '—add-drop-user', und zur selektiven Reflektion einzelner Benutzer im Dump sind die Optionen '—include-user=user@host' und '—exclude-user=user@host' vorhanden, die mehrfach angegeben werden können.
  • Im MLE (Multilingual Engine Component), das die Verwendung von Code in gespeicherten Prozeduren und Funktionen in Sprachen außer SQL ermöglicht, wurde die UnterstĂŒtzung fĂŒr JavaScript verbessert. FĂŒr gespeicherte Prozeduren in JavaScript wurde der Typ 'DECIMAL' implementiert, der fĂŒr Eingabewerte und RĂŒckgabewerte verwendet werden kann. StandardmĂ€ĂŸig wird der MySQL-Typ DECIMAL aus SicherheitsgrĂŒnden in den JavaScript-Typ 'String' umgewandelt, aber dieses Verhalten kann mit dem Befehl 'SELECT mle_set_session_state(‘{„decimal_type“:„Number“}’)' ĂŒberschrieben werden, nach dem der JavaScript-Typ 'Number' verwendet wird. Die Umwandlung von Werten mit den JavaScript-Typen Boolean, Number, String und BigInt in den DECIMAL-Typ wird unterstĂŒtzt.
  • In die gespeicherten Prozeduren in JavaScript wurde die UnterstĂŒtzung fĂŒr das Setzen von Lokalisierungsparametern ĂŒber die JavaScript-API Intl integriert. Zum Beispiel kann die aktuelle Locale mit der Eigenschaft 'Intl.DateTimeFormat().resolvedOptions().locale' ermittelt werden, und zur Überschreibung der Locale kann die Methode 'toLocaleString()' verwendet werden.
  • Die Möglichkeiten zur Verwaltung von JavaScript-Bibliotheken wurden erweitert: FĂŒr die Änderung der Liste importierter Bibliotheken können nun die AusdrĂŒcke „ALTER PROCEDURE“ und „ALTER FUNCTION“ verwendet werden. Es wurde die Möglichkeit hinzugefĂŒgt, den Ausdruck „ALTER LIBRARY“ zum HinzufĂŒgen, Löschen oder Ändern von SQL-Kommentaren zur Bibliothek zu verwenden. Um Informationen ĂŒber die Bibliothek zu erhalten, wurde der Ausdruck „SHOW LIBRARY STATUS“ implementiert.
  • Die UnterstĂŒtzung fĂŒr das dynamische Laden von JavaScript-Bibliotheken wurde hinzugefĂŒgt. FĂŒr den dynamischen Import einer Bibliothek sollte das SchlĂŒsselwort „await“ verwendet werden, zum Beispiel „let module = await import(‘/db1/lib_${object_type}’)“.
  • Die Optimierungen fĂŒr Abfragen, die quantifizierte Vergleichsoperatoren verwenden, wurden erweitert. Neben der UnterstĂŒtzung der Operatoren „=ANY“ und „ALL“ wurde in der neuen Version die UnterstĂŒtzung fĂŒr die Operatoren „>ANY“, „>=ANY“, „<ANY“, „ALL“, „>=ALL“, „<ALL“ und „<=ALL“ hinzugefĂŒgt.
  • Das Plugin „version_tokens“, das zuvor als veraltet erklĂ€rt wurde, wurde entfernt.
  • Es ist verboten, den Wert 0 fĂŒr die Systemvariable replica_parallel_workers zu setzen.
  • 28 SicherheitsanfĂ€lligkeiten wurden behoben, von denen 26 aus der Ferne ausgenutzt werden können, wenn Zugang zum Senden von Anfragen an das DBMS besteht. Sechs der schwerwiegendsten Probleme haben einen Schweregrad von 6,5 und sind mit SicherheitsanfĂ€lligkeiten im InnoDB-Engine, Parser und Optimierer verbunden. Weniger schwerwiegende SicherheitsanfĂ€lligkeiten betreffen mysqldump, InnoDB, den Optimierer, DDL, UDF, Parser und das Replizierungssystem.

Quelle: opennet.ru

60GB SSD 8Gb DDR4