Lanzamiento de la base de datos MySQL 9.2.0

La empresa Oracle ha formado una nueva rama de la base de datos MySQL 9.2.0. Las compilaciones de MySQL Community Server 9.2.0 están preparadas para todas las distribuciones principales de Linux, FreeBSD, macOS y Windows. En el marco del nuevo modelo de formación de lanzamientos implementado en 2023, MySQL 9.2 se ha colocado en las ramas 'Innovation', a las que también se asignará el siguiente lanzamiento significativo MySQL 9.3. Las ramas de Innovation están recomendadas para quienes desean acceder a nuevas funcionalidades más temprano, se publican cada 3 meses y se mantienen solo hasta la publicación del siguiente lanzamiento significativo (por ejemplo, después de la aparición de la rama 9.2, la rama 9.1 deja de ser soportada). En verano se planea formar un lanzamiento LTS, recomendado para implementaciones que requieren previsibilidad y una duración prolongada de un comportamiento inalterado. Después de la rama LTS, se formará una nueva rama de Innovation: MySQL 10.0.

Principales cambios en MySQL 9.2:

  • Al motor MLE (Multilingual Engine Component), que permite utilizar en los procedimientos almacenados y funciones código en lenguajes distintos de SQL, se le ha añadido soporte para bibliotecas reutilizables en lenguaje JavaScript. Las funciones de tales bibliotecas pueden ser llamadas desde procedimientos almacenados en lenguaje JavaScript, pero deben ser explícitamente marcadas como importables mediante la palabra clave 'export'. Para gestionar la conexión de bibliotecas JavaScript, se han añadido nuevas expresiones SQL 'CREATE LIBRARY' y 'DROP LIBRARY'. Para ver la lista de bibliotecas JavaScript disponibles, se ha añadido la expresión 'SHOW CREATE LIBRARY'. La información sobre las bibliotecas JavaScript se refleja en la tabla del sistema 'LIBRARIES', y sobre los procedimientos almacenados que usan tales bibliotecas en la tabla 'ROUTINE_LIBRARIES'. La conexión a la biblioteca en un procedimiento almacenado se realiza mediante la especificación de la lista de bibliotecas en la expresión 'USING'.
  • Se ha añadido un API para acceder a procedimientos almacenados, funciones y variables de sesión desde código en lenguaje JavaScript. Para acceder a las funciones de MySQL se ha añadido el método getFunction(), y para los procedimientos almacenados el método getProcedure(), que devuelven un objeto Function de JavaScript, que puede ser ejecutado con argumentos. El acceso a las variables se realiza directamente como propiedades del objeto JavaScript Session. Además, se ha añadido la posibilidad de acceso directo a las funciones integradas rand(), sleep(), uuid() e isUUID(), que son similares a las funciones SQL homónimas.
  • Se ha añadido una API para trabajar con transacciones desde JavaScript, permitiendo realizar acciones de la mayoría de expresiones SQL relacionadas con transacciones, como «START TRANSACTION», «COMMIT», «ROLLBACK» y «SET AUTOCOMMIT».
  • Se ha añadido la posibilidad de utilizar tipos MySQL ENUM y SET en los argumentos de procedimientos almacenados escritos en JavaScript.
  • Se ha declarado la privilegio CREATE_SPATIAL_REFERENCE_SYSTEM, que permite gestionar la capacidad de crear y eliminar definiciones de referencia espacial en sistemas de información geográfica. La presencia de este privilegio o del privilegio SUPER ahora es obligatoria para ejecutar expresiones como «CREATE SPATIAL REFERENCE SYSTEM», «CREATE OR REPLACE SPATIAL REFERENCE SYSTEM» y «DROP SPATIAL REFERENCE SYSTEM».
  • En la salida de «EXPLAIN FORMAT=JSON» se ha añadido información sobre la versión del formato JSON. Para establecer la versión del formato JSON, se debe utilizar la variable explain_json_format_version («SET explain_json_format_version=1|2»).
  • Se han declarado obsoletas: la expresión «FLUSH PRIVILEGES», los comandos «mysqladmin flush-privileges» y «mysqladmin reload», y el plugin «version_tokens».
  • Se ha descontinuado el soporte para la palabra clave BINLOG.
  • Se han corregido 32 vulnerabilidades, de las cuales 3 pueden ser explotadas de forma remota. Los dos problemas más graves tienen un nivel de peligrosidad de 9.1 y están relacionados con vulnerabilidades en los componentes Kerberos y Curl. Las vulnerabilidades menos peligrosas afectan a InnoDB, Thread Pooling, DDL, optimizador, analizador y sistema de autenticación.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster