MySQL 9.2.0 Veröffentlichung

Die Firma Oracle hat einen neuen Zweig der Datenbank MySQL 9.2.0 eingefĂŒhrt. Die Versionen MySQL Community Server 9.2.0 sind fĂŒr alle gĂ€ngigen Linux-Distributionen, FreeBSD, macOS und Windows vorbereitet. Im Rahmen des im Jahr 2023 eingefĂŒhrten neuen Modells zur Veröffentlichung von Releases wurde MySQL 9.2 den "Innovation"-Zweigen zugeordnet, zu denen auch die nĂ€chste bedeutende Version MySQL 9.3 gehören wird. Die Innovation-Zweige werden fĂŒr diejenigen empfohlen, die frĂŒher Zugang zu neuen FunktionalitĂ€ten erhalten möchten, erscheinen alle 3 Monate und werden nur bis zur Veröffentlichung des nĂ€chsten bedeutenden Releases unterstĂŒtzt (beispielsweise wird nach dem Erscheinen des Zweigs 9.2 die UnterstĂŒtzung des Zweigs 9.1 eingestellt). Im Sommer ist die Veröffentlichung eines LTS-Releases geplant, das fĂŒr Implementierungen empfohlen wird, die Vorhersehbarkeit und langfristige StabilitĂ€t erfordern. Dem LTS-Zweig folgt ein neuer Innovation-Zweig — MySQL 10.0.

Wesentliche Änderungen in MySQL 9.2:

  • In die MLE-Engine (Multilingual Engine Component), die es ermöglicht, in gespeicherten Prozeduren und Funktionen Code in anderen Sprachen als SQL zu verwenden, wurde die UnterstĂŒtzung fĂŒr wiederverwendbare Bibliotheken in der Programmiersprache JavaScript eingefĂŒhrt. Funktionen aus solchen Bibliotheken können aus gespeicherten Prozeduren in JavaScript aufgerufen werden, mĂŒssen jedoch beim Import mit dem SchlĂŒsselwort „export“ eindeutig gekennzeichnet werden. Zur Verwaltung der Verbindungen zu JavaScript-Bibliotheken wurden neue SQL-Aussagen „CREATE LIBRARY“ und „DROP LIBRARY“ hinzugefĂŒgt. Um die Liste der verfĂŒgbaren JavaScript-Bibliotheken einzusehen, wurde die Aussage „SHOW CREATE LIBRARY“ ergĂ€nzt. Informationen zu JavaScript-Bibliotheken werden in der Systemtabelle „LIBRARIES“ angezeigt, wĂ€hrend gespeicherte Prozeduren, die solche Bibliotheken nutzen, in der Tabelle „ROUTINE_LIBRARIES“ erfasst sind. Das Einbinden einer Bibliothek in einer gespeicherten Prozedur erfolgt ĂŒber die Angabe der Bibliotheksliste in der Aussage „USING“.
  • Eine API fĂŒr den Zugriff auf gespeicherte Prozeduren, Funktionen und Sitzungsvariablen aus JavaScript-Code wurde hinzugefĂŒgt. Um auf MySQL-Funktionen zuzugreifen, wurde die Methode getFunction() hinzugefĂŒgt, und fĂŒr gespeicherte Prozeduren - die Methode getProcedure(), die ein JavaScript-Objekt Function zurĂŒckgibt, das mit Argumenten ausgefĂŒhrt werden kann. Der Zugriff auf Variablen erfolgt direkt als Eigenschaften des JavaScript-Objekts Session. DarĂŒber hinaus wurde die Möglichkeit des direkten Zugriffs auf die eingebauten Funktionen rand(), sleep(), uuid() und isUUID() hinzugefĂŒgt, die den gleichnamigen SQL-Funktionen entsprechen.
  • Eine API fĂŒr die Arbeit mit Transaktionen aus JavaScript wurde hinzugefĂŒgt, die die AusfĂŒhrung der meisten SQL-AusdrĂŒcke fĂŒr die Arbeit mit Transaktionen ermöglicht, wie z.B. „START TRANSACTION“, „COMMIT“, „ROLLBACK“ und „SET AUTOCOMMIT“.
  • Die Möglichkeit, MySQL-Typen ENUM und SET in den Argumenten von in JavaScript geschriebenen gespeicherten Prozeduren zu verwenden, wurde hinzugefĂŒgt.
  • Das Privileg CREATE_SPATIAL_REFERENCE_SYSTEM wurde eingefĂŒhrt, mit dem die Möglichkeit verwaltet wird, Definitionen fĂŒr die rĂ€umliche Bindung von Geoinformationssystemen zu erstellen und zu löschen. Der Besitz dieses Privilegs oder des Privilegs SUPER ist nun erforderlich, um die AusdrĂŒcke „CREATE SPATIAL REFERENCE SYSTEM“, „CREATE OR REPLACE SPATIAL REFERENCE SYSTEM“ und „DROP SPATIAL REFERENCE SYSTEM“ auszufĂŒhren.
  • Die Ausgabe „EXPLAIN FORMAT=JSON“ wurde um Informationen zur Version des JSON-Formats erweitert. Um die Version des JSON-Formats festzulegen, sollte die Variable explain_json_format_version verwendet werden („SET explain_json_format_version=1|2“).
  • Folgendes wurde als veraltet erklĂ€rt: der Befehl „FLUSH PRIVILEGES“, die Befehle „mysqladmin flush-privileges“ und „mysqladmin reload“, sowie das Plugin „version_tokens“.
  • Die UnterstĂŒtzung fĂŒr das SchlĂŒsselwort BINLOG wurde eingestellt.
  • 32 SicherheitsanfĂ€lligkeiten wurden behoben, darunter 3, die aus der Ferne ausgenutzt werden können. Die beiden schwerwiegendsten Probleme haben ein GefĂ€hrdungsniveau von 9.1 und beziehen sich auf Schwachstellen in den Komponenten Kerberos und Curl. Weniger schwerwiegende Schwachstellen betreffen InnoDB, Thread Pooling, DDL, den Optimierer, den Parser und das Authentifizierungssystem.

Quelle: opennet.ru

60GB SSD 8Gb DDR4