Guía completa para obtener el número de versión de MySQL con advertencias esenciales

En entornos de desarrollo y producción, a menudo es crucial determinar la versión exacta de MySQL en uso. A continuación, se describen diversas técnicas para recuperar esta información, junto con métodos alternativos para inspeccionar detalles relacionados y advertencias sobre enfoques comunes pero engañosos.

Método 1: Consultas SQL directas

Si tienes acceso para ejecutar sentencias SQL, estas consultas devuelven la versión del servidor MySQL:

SELECT VERSION();
SELECT @@global.version;

Ejemplo de salida:

+--------------+
| VERSION()    |
+--------------+
| 8.0.33       |
+--------------+

Método 2: Uso de la línea de comandos

2.1 Durante la conexión inicial

Al conectarse mediante el cliente de consola, la información de bienvenida incluye los datos de versión. Ejemplo:

$ mysql -u usuario -p
...
Server version: 8.0.33 MySQL Community Server (GPL)
...

2.2 Ejecución del comando status

Dentro de la sesión de mysql, el comendo status o su abreviatura \s muestra tanto la versión del cliente como la del servidor:

mysql> status
...
mysql  Ver 8.0.33 for Linux on x86_64 (MySQL Community Server - GPL)
...
Server version:         8.0.33 MySQL Community Server (GPL)
...

Método 3: Inspección de variables de comentarios de versión

Esta técnica permite distinguir entre distribuciones oficiales y forks personalizados:

SHOW VARIABLES LIKE 'version_comment';

Resultado para MySQL estándar:

+-----------------+------------------------------+
| Variable_name   | Value                        |
+-----------------+------------------------------+
| version_comment | MySQL Community Server (GPL) |
+-----------------+------------------------------+

Otros sistemas como TiDB o StarRocks producen salidas diferentes, útiles para identificaciones específicas.

Método 4: Listado de todas las variables relacionadas con versión

Para obtener un panorama completo de la información de versión compilada y configurada:

SHOW GLOBAL VARIABLES WHERE Variable_name LIKE '%version%';

Esto devuelve una tabla con múltiples campos, incluyendo innodb_version, tls_version, y version_compile_os, entre otros.

Advertencias y correcciones de enfoques erróneos

Algunas fuentes recomiendan métodos que pueden ser imprecisos:

  • Uso de banderas del cliente: Ejecutar mysql --version o mysql -V muestra la versión del binario del cliente, no la del servidor activo. Esta discrepancia es común cuando se utilizan herramientas de línea de comandos actualizadas independientemente.
  • Paquetes del sistema: Comandos como rpm -qa | grep mysql pueden indicar versiones instaladas mediante gestores de paquetes, pero no garantizan que sea la instancia en ejecución, especialmente si se usaron instalaciones manuales, contenedores o múltiples versiones coexistentes.

Etiquetas: MySQL SQL database versioning command line system variables

Publicado el 6-8 17:02