Databases for MySQL 8.4 GA

Como parte de nuestro compromiso de ofrecer una cartera de bases de datos en la nube rica y madura, Cloud Databases lanza MySQL versión 8.4.

Nuevas implementaciones de Databases for MySQL

Para nuevas implantaciones de Cloud Databases, haga una copia de seguridad de su instancia v8.0 existente e impórtela en una implantación de v8.4. Utilice herramientas como mysqldump o mydumper para importar en Databases for MySQL v8.4 despliegue. Para obtener más información, consulte Migración a Databases for MySQL.

Implementaciones existentes de Databases for MySQL v8.0

Para trasladar las implementaciones existentes de v8.0 en IBM Cloud® Databases for MySQL a la nueva versión principal v8.4, debe realizar una actualización de versión principal. La ruta recomendada es restaurar una copia de seguridad de su implementación existente de v8.0 en una nueva implementación que ejecute MySQL v8.4. Puede iniciar este proceso de actualización mediante la interfaz de usuario, la interfaz de línea de comandos o la API. Para obtener instrucciones detalladas paso a paso sobre cómo realizar esta actualización de versión principal, consulte Actualización a una nueva versión principal.

Una vez finalizada la actualización, los cambios no se pueden revertir. Los cambios son incompatibles y no se puede utilizar el directorio de datos de MySQL 8.4 en MySQL 8.0. Conserve su copia de seguridad MySQL v8.0, ya que le ayudará a restaurarla en una instancia MySQL v8.0 en caso de que sea necesario revertir los cambios.

Requisitos previos para la actualización

Antes de intentar cualquier actualización, consulte MySQL's Preparing your installation for upgrade (Preparación de la instalación para la actualización) para asegurarse de que está todo listo para la actualización.

Introducción a MySQL 8.4 LTS

MySQL 8.4 es la nueva versión de soporte a largo plazo (LTS). Al tratarse de una versión LTS, sus características son estables y permanecen fijas tras el lanzamiento inicial de 8.4.0. Con el fin de la vida útil de MySQL 8.0, la migración a MySQL 8.4 es crucial para continuar recibiendo soporte, correcciones de errores y actualizaciones de seguridad.

Cambios clave en las funciones de Databases for MySQL 8.4

Databases for MySQL introduce las siguientes nuevas características para las instancias de base de datos que ejecutan la versión MySQL 8.4:

  • Autenticación: MySQL 8.4 establece caching_sha2_password como el complemento de autenticación predeterminado, eliminando por completo la variable default_authentication_plugin. Los clientes que actualmente utilizan mysql_native_password deben migrar sus cuentas a caching_sha2_password para evitar fallos de conexión. Para obtener más información, consulte la sección 8.4.1.1, Autenticación nativa conectable.
  • MySQL 8.4: Actualizaciones de la terminología de replicación: MySQL 8.4 impone un lenguaje inclusivo al eliminar términos no inclusivos, como Master y Slave, de la sintaxis SQL, lo que significa que las sentencias SQL de replicación obsoletas ya no son compatibles y provocarán errores de sintaxis. Por ejemplo, utilice SHOW BINARY LOG STATUS en lugar de SHOW MASTER STATUS y utilice SHOW REPLICA STATUS en lugar de SHOW SLAVE STATUS. La automatización y las configuraciones deben actualizarse para utilizar estos nuevos nombres. Aquí encontrará una lista completa de los cambios en las declaraciones: Novedades de « MySQL 8.4» desde « MySQL 8.0».
  • Cambios en el comportamiento de los parámetros:
    • binlog_transaction_compression se establece de forma predeterminada en ON para reducir el tiempo de transferencia de red y el uso de almacenamiento.
    • replica_parallel_workers tiene un valor predeterminado de 200 para aumentar significativamente la concurrencia y acelerar la reproducción de transacciones en las réplicas.
    • innodb_flush_log_at_trx_commit tiene un valor predeterminado de 1 para garantizar la máxima durabilidad de los datos en el nodo principal.
    • binlog_transaction_compression_level_zstd tiene un valor predeterminado de 3 para equilibrar la eficiencia de la compresión con la sobrecarga de la CPU.
  • Parámetros obsoletos o eliminados:
    • AUTO_INCREMENT: MySQL 8.4 ya no admite AUTO_INCREMENT en FLOAT o DOUBLE columnas. Antes de actualizar, debe modificar cualquier tabla que utilice esta combinación para evitar errores en la actualización.
    • Se han eliminado las sentencias y variables de replicación: se ha eliminado una amplia gama de comandos MASTER /SLAVE* y variables de estado. Esto significa que cualquier script o herramienta que dependa de estas variables de estado dejará de funcionar. Para obtener una lista completa de las sentencias y variables eliminadas, consulte Novedades de MySQL 8.4 desde MySQL 8.0.
    • Variables de autenticación: La variable default_authentication_plugin ya no está.
  • Cambios notables:
    • Nuevas palabras clave reservadas: MySQL 8.4 reserva palabras clave como MANUAL, PARALLEL, QUALIFY, y TABLESAMPLE. Si su esquema utiliza estos como identificadores sin comillas, las consultas fallarán después de la actualización. Audite y cite estos identificadores antes de actualizar.
    • Requisito de actualización del índice espacial: un problema conocido en la ruta de actualización puede provocar daños en los índices espaciales. Para garantizar la integridad de los datos, recomendamos eliminar todos los índices espaciales antes de la actualización y volver a crearlos inmediatamente después de completar la migración.
    • Actualizaciones automáticas del histograma: MySQL 8.4 introduce actualizaciones automáticas del histograma, lo que mejora la optimización de las consultas al eliminar la necesidad de actualizaciones manuales. Para habilitar la actualización automática en un histograma específico, simplemente ejecute ANALYZE TABLE UPDATE HISTOGRAM con la AUTO UPDATE opción.
    • Mejoras de privilegios: El SET_USER_ID privilegio ha sido sustituido por SET_ANY_DEFINER y ALLOW_NONEXISTENT_DEFINER.
    • GTID: Introduce la posibilidad de etiquetar grupos de transacciones con GTID para mejorar el seguimiento.

Para obtener una lista de todas las características y cambios de MySQL 8.4, consulte Novedades de MySQL 8.4 desde MySQL 8.0 en la documentación de MySQL.

Transición de semisincronización a asincronía

Al actualizar de Databases for MySQL v8.0 a v8.4, la arquitectura de replicación predeterminada pasa de ser semisincrónica a asincrónica. Este cambio mejora el rendimiento de escritura y la resiliencia al garantizar que el nodo principal no se detenga esperando confirmaciones de réplicas, lo que hace que su entorno de base de datos sea más robusto y consistentemente rápido. Esto mejora la alta disponibilidad al reducir los tiempos de conmutación por error y mejorar la capacidad de respuesta general del sistema. Para obtener más información, consulte Visión general de la alta disponibilidad y la recuperación tras desastre de Databases for MySQL.