Base de datos MySQL 8.4.0 LTS disponible

La empresa Oracle ha creado una nueva rama de la base de datos MySQL 8.4 y ha publicado una actualización correctiva MySQL 8.0.37. Las compilaciones del servidor comunitario MySQL 8.4.0 están preparadas para todas las principales distribuciones de Linux, FreeBSD, macOS y Windows. La versión 8.4.0 está clasificada como una rama de soporte a largo plazo (LTS), que se publica cada dos años y se mantiene durante 5 años (más se pueden obtener otros 3 años de soporte extendido).

MySQL 8.4.0 es la cuarta versión formada bajo el nuevo modelo de desarrollo de versiones, que contempla la existencia de dos tipos de ramas de MySQL: 'Innovación' y 'LTS'. Las ramas de Innovación, que incluyen MySQL 8.1, 8.2 y 8.3, son recomendadas para aquellos que desean acceder a nuevas funcionalidades más rápidamente. Estas ramas se publican cada 3 meses y son soportadas solamente hasta la publicación de la siguiente versión significativa (por ejemplo, después de la aparición de la rama 8.4, se detiene el soporte para la rama 8.3). Las ramas LTS son recomendadas para implementaciones que requieren previsibilidad y una duración prolongada del comportamiento inalterado. Tras la rama LTS se creará una nueva rama de Innovación: MySQL 9.0.

Principales cambios en MySQL 8.4:

  • El optimizador ahora soporta la actualización automática de histogramas, independientemente de la ejecución de la operación 'ANALYZE TABLE' para la tabla principal. La actualización automática se activa utilizando la expresión 'AUTO UPDATE' al ejecutar la operación 'ANALYZE TABLE', y se desactiva utilizando la expresión 'MANUAL UPDATE', que se utiliza por defecto.
  • Se han añadido las opciones '--keyring-migration-from-component', '--keyring-migration-source' y '--keyring-migration-destination' para la migración del componente keyring al plugin keyring.
  • Se ha añadido un nuevo privilegio FLUSH_PRIVILEGES, que a diferencia del privilegio RELOAD anteriormente disponible, otorga al usuario derechos solo para ejecutar la operación 'FLUSH PRIVILEGES'.
  • Se ha añadido un nuevo privilegio OPTIMIZE_LOCAL_TABLE, que permite al usuario ejecutar las operaciones 'OPTIMIZE LOCAL TABLE' y 'OPTIMIZE NO_WRITE_TO_BINLOG TABLE'.
  • Se han cambiado los valores por defecto de las variables del sistema group_replication_consistency y group_replication_exit_state_action. La variable group_replication_consistency ahora se establece en los valores BEFORE_ON_PRIMARY_FAILOVER en lugar de EVENTUAL, y la variable group_replication_exit_state_action en OFFLINE_MODE en lugar de READ_ONLY.
  • En las compilaciones que se suministran con la biblioteca OpenSSL integrada, se ha utilizado la nueva versión OpenSSL 3.0.13.
  • La actualización directa de MySQL 5.7 a MySQL 8.4 ha sido interrumpida. Ahora, para migrar de MySQL 5.7, primero se debe actualizar a la rama 8.0 y luego a la versión 8.4.
  • Se han cambiado los valores predeterminados de las siguientes configuraciones de InnoDB: innodb_adaptive_hash_index, innodb_buffer_pool_in_core_file, innodb_buffer_pool_instances, innodb_change_buffering, innodb_doublewrite_files, innodb_doublewrite_pages, innodb_flush_method, innodb_io_capacity, innodb_io_capacity_max, innodb_log_buffer_size, innodb_numa_interleave, innodb_page_cleaners, innodb_parallel_read_threads, innodb_purge_threads, innodb_read_io_threads, innodb_use_fdatasync, temptable_max_ram, temptable_max_mmap y temptable_use_mmap.
  • Se ha añadido soporte para la construcción de paquetes para las distribuciones Fedora 40 y Ubuntu 24.04.
  • El plugin de servidor mysql_native_password, que permite la autenticación mediante contraseñas, se ha deshabilitado de forma predeterminada y ha sido declarado obsoleto. En lugar de mysql_native_password, se recomienda utilizar el plugin caching_sha2_password, que utiliza el algoritmo SHA2 para el hash en lugar de SHA1. Para volver a habilitar el soporte de mysql_native_password, se puede usar la opción "—mysql-native-password=ON" o la configuración "mysql_native_password=ON".
  • Se ha interrumpido el soporte para protocolos y algoritmos de cifrado inseguros. Solo se han mantenido TLS v1.2 y TLS v1.3, algoritmos que garantizan la confidencialidad futura (forward secrecy), cifrados y certificados con SHA2, y algoritmos AES en modo GCM o AEAD.
  • Se han eliminado las expresiones SQL relacionadas con la replicación que anteriormente habían sido declaradas obsoletas debido al uso de una terminología no inclusiva: START SLAVE (debe usarse START REPLICA); STOP SLAVE (debe usarse STOP REPLICA); SHOW SLAVE STATUS (debe usarse SHOW REPLICA STATUS); SHOW SLAVE HOSTS (SHOW REPLICAS); RESET SLAVE (RESET REPLICA); CHANGE MASTER TO (CHANGE REPLICATION SOURCE TO); RESET MASTER (RESET BINARY LOGS AND GTIDS); SHOW MASTER STATUS (SHOW BINARY LOG STATUS); PURGE MASTER LOGS (PURGE BINARY LOGS); SHOW MASTER LOGS (SHOW BINARY LOGS).
  • Se han eliminado las opciones previamente declaradas como obsoletas que se utilizaban en las expresiones «CHANGE REPLICATION SOURCE TO» y «START REPLICA», que usaban la palabra «master», que se ha reemplazado por «source»: SOURCE_AUTO_POSITION (debe usarse SOURCE_AUTO_POSITION), SOURCE_HOST (debe usarse SOURCE_HOST), SOURCE_BIND (debe usarse SOURCE_BIND), SOURCE_USER (SOURCE_USER), SOURCE_PASSWORD (SOURCE_PASSWORD), SOURCE_PORT (SOURCE_PORT), SOURCE_CONNECT_RETRY (SOURCE_CONNECT_RETRY), SOURCE_RETRY_COUNT (SOURCE_RETRY_COUNT), SOURCE_DELAY (SOURCE_DELAY), SOURCE_SSL (SOURCE_SSL), SOURCE_SSL_CA (SOURCE_SSL_CA), SOURCE_SSL_CAPATH (SOURCE_SSL_CAPATH), SOURCE_SSL_CIPHER (SOURCE_SSL_CIPHER), SOURCE_SSL_CRL (SOURCE_SSL_CRL), SOURCE_SSL_CRLPATH (SOURCE_SSL_CRLPATH), SOURCE_SSL_KEY (SOURCE_SSL_KEY), SOURCE_SSL_VERIFY_SERVER_CERT (SOURCE_SSL_VERIFY_SERVER_CERT), SOURCE_TLS_VERSION (SOURCE_TLS_VERSION), SOURCE_TLS_CIPHERSUITES (SOURCE_TLS_CIPHERSUITES), SOURCE_SSL_CERT (SOURCE_SSL_CERT), SOURCE_PUBLIC_KEY_PATH (SOURCE_PUBLIC_KEY_PATH), GET_SOURCE_PUBLIC_KEY (GET_SOURCE_PUBLIC_KEY), SOURCE_HEARTBEAT_PERIOD (SOURCE_HEARTBEAT_PERIOD), SOURCE_COMPRESSION_ALGORITHMS (SOURCE_COMPRESSION_ALGORITHMS), SOURCE_ZSTD_COMPRESSION_LEVEL (SOURCE_ZSTD_COMPRESSION_LEVEL), SOURCE_LOG_FILE (SOURCE_LOG_FILE), SOURCE_LOG_POS (SOURCE_LOG_POS).
  • Se han eliminado las variables de sistema que contenían las palabras «master» y «slave»: Com_replica_start (debe usarse Com_replica_start); Com_replica_stop (Com_replica_stop); Com_show_replica_status (Com_show_replica_status); Com_show_replicas (Com_show_replicas); Com_show_binary_log_status (Com_show_binary_log_status); y Com_change_replication_source (Com_change_replication_source).
  • Se ha declarado obsoleta la variable de sistema group_replication_allow_local_lower_version_join. Se han eliminado las opciones previamente declaradas como obsoletas «—no-dd-upgrade», «—old», «—new», «—language», «—ssl«, «—admin-ssl» y las variables binlog_transaction_dependency_tracking, group_replication_recovery_complete_at, avoid_temporal_upgrade, show_old_temporals y default_authentication_plugin.
  • Se ha eliminado la tabla no utilizada INFORMATION_SCHEMA.TABLESPACES.
  • Se ha dejado de admitir el uso del valor LOW_PRIORITY junto con la expresión «LOCK TABLES … WRITE».
  • Se ha dejado de admitir el uso del modificador AUTO_INCREMENT junto con los tipos FLOAT y DOUBLE.
  • Se ha eliminado la utilidad mysql_ssl_rsa_setup — al compilar con OpenSSL. servidor MySQL puede generar automáticamente los archivos SSL y RSA que faltan al iniciarse.
  • Se ha eliminado la utilidad mysql_upgrade, que no se usa con la versión MySQL 8.0.16.
  • Se han eliminado las utilidades mysqlpump, lz4_decompress y zlib_decompress, para las cuales se debe utilizar la utilidad mysqldump o los comandos de la shell interactiva.
  • Se han eliminado los plugins: authentication_fido, authentication_fido_client (debe usarse authentication_webauthn); keyring_file (debe usarse component_keyring_file); keyring_encrypted_file (debe usarse component_keyring_encrypted_file); keyring_oci (debe usarse component_keyring_oci).
  • Se ha detenido el soporte para la expresión ENGINE junto con varias variantes de «DROP TABLESPACE» y «ALTER TABLESPACE».
  • Se ha eliminado el privilegio «SET_USER_ID», que ya no se puede especificar en las expresiones GRANT.
  • Se han devuelto las funciones de la API: mysql_kill(), mysql_list_fields(), mysql_list_processes(), mysql_refresh(), mysql_reload(), mysql_shutdown() y mysql_ssl_set(), algunas de las cuales han sido remodeladas utilizando la función mysql_real_query(). Estas funciones fueron eliminadas en la rama MySQL 8.3, pero se han recuperado para soporte en la rama LTS de MySQL 8.4.
  • Se han solucionado 26 vulnerabilidades que pueden ser explotadas de forma remota. El problema más grave tiene un nivel de peligrosidad de 6.5 y está relacionado con una vulnerabilidad en openSSL. Las vulnerabilidades menos graves afectan al optimizador, InnoDB, Thread Pooling, el complemento de replicación en grupo, el complemento de auditoría, DML y mysqldump.

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