Release van MySQL DBMS 9.2.0

Oracle heeft een nieuwe versie van MySQL 9.2.0 uitgebracht. MySQL Community Server 9.2.0-builds zijn beschikbaar voor alle belangrijke Linux-distributies, FreeBSD, macOS en Windows. Als onderdeel van het nieuwe releasemodel dat in 2023 werd geïntroduceerd, is MySQL 9.2 toegewezen aan de 'Innovatie'-takken, waartoe ook de volgende grote release, MySQL 9.3, zal behoren. Innovatiebranches worden aanbevolen voor gebruikers die vroegtijdig toegang willen tot nieuwe functionaliteit. Deze branches worden elke 3 maanden gepubliceerd en worden alleen ondersteund tot de volgende grote release (na de release van branch 9.2 is de ondersteuning voor branch 9.1 bijvoorbeeld stopgezet). In de zomer willen ze een LTS-release uitbrengen die wordt aanbevolen voor implementaties die voorspelbaarheid en behoud van onveranderd gedrag op de lange termijn vereisen. Na de LTS-branch wordt een nieuwe Innovation-branch gevormd: MySQL 10.0.

Grote veranderingen in MySQL 9.2:

  • De MLE (Multilingual Engine Component), die het gebruik van code in andere talen dan SQL in opgeslagen procedures en functies mogelijk maakt, is uitgebreid ter ondersteuning van herbruikbare JavaScript-bibliotheken. Functies uit dergelijke bibliotheken kunnen worden aangeroepen vanuit opgeslagen JavaScript-procedures, maar moeten expliciet als geïmporteerd worden gemarkeerd met behulp van het trefwoord "export". Er zijn nieuwe SQL-instructies 'CREATE LIBRARY' en 'DROP LIBRARY' toegevoegd om de verbinding van JavaScript-bibliotheken te beheren. Om de lijst met beschikbare JavaScript-bibliotheken te bekijken, is de instructie "SHOW CREATE LIBRARY" toegevoegd. Informatie over JavaScript-bibliotheken wordt weergegeven in de systeemtabel 'LIBRARIES' en over opgeslagen procedures die gebruikmaken van dergelijke bibliotheken in de tabel 'ROUTINE_LIBRARIES'. U kunt een bibliotheek in een opgeslagen procedure verbinden door een lijst met bibliotheken op te geven in de expressie 'USING'.
  • API toegevoegd voor toegang tot opgeslagen procedures, functies en sessievariabelen vanuit JavaScript-code. De getFunction()-methode is toegevoegd om toegang te krijgen tot MySQL-functies en de getProcedure()-methode is toegevoegd aan opgeslagen procedures, die een JavaScript Function-object retourneren dat met argumenten kan worden uitgevoerd. Variabelen zijn rechtstreeks toegankelijk als eigenschappen van het JavaScript-object Session. Bovendien is de mogelijkheid toegevoegd om direct toegang te krijgen tot de ingebouwde functies rand(), sleep(), uuid() en isUUID(), die vergelijkbaar zijn met de gelijknamige SQL-functies.
  • Er is een transactie-API vanuit JavaScript toegevoegd waarmee u de meeste transactiegerelateerde SQL-instructies kunt uitvoeren, zoals START TRANSACTION, COMMIT, ROLLBACK en SET AUTOCOMMIT.
  • De mogelijkheid toegevoegd om MySQL ENUM- en SET-typen te gebruiken in argumenten van opgeslagen procedures die zijn geschreven in JavaScript
  • Het privilege CREATE_SPATIAL_REFERENCE_SYSTEM is toegevoegd. Hiermee kunt u bepalen of u ruimtelijke referentiedefinities voor geografische informatiesysteemgegevens kunt maken en verwijderen. U hebt nu dit privilege of het SUPER-privilege nodig om de statements CREATE SPATIAL REFERENCE SYSTEM, CREATE OR REPLACE SPATIAL REFERENCE SYSTEM en DROP SPATIAL REFERENCE SYSTEM uit te voeren.
  • Versie-informatie van het JSON-formaat toegevoegd aan de uitvoer "EXPLAIN FORMAT=JSON". Om de versie van de JSON-indeling in te stellen, gebruikt u de variabele 'explain_json_format_version' ("SET expand_json_format_version=1|2").
  • Verouderd: de expressie "FLUSH PRIVILEGES", de opdrachten "mysqladmin flush-privileges" en "mysqladmin reload", de plug-in "version_tokens".
  • Het trefwoord BINLOG is stopgezet.
  • Er zijn 32 kwetsbaarheden verholpen, waarvan er 3 op afstand kunnen worden misbruikt. De twee ernstigste problemen hebben een ernstniveau van 9.1 en houden verband met kwetsbaarheden in de Kerberos- en Curl-componenten. Minder ernstige kwetsbaarheden treffen InnoDB, Thread Pooling, DDL, optimizer, parser en authenticatiesysteem.

Bron: opennet.ru

Voeg een reactie