Saltar al contenido
DBAExperts
MySQL Operación

Cómo cambiar variables de configuración en MySQL de forma segura

MySQL tiene variables dinámicas (se cambian en caliente) y variables que solo aplican al arranque. El error clásico es cambiar algo con SET GLOBAL, ver que funciona, y perderlo en el siguiente reinicio. MySQL 8.0 resuelve esto con SET PERSIST.

  1. 1

    Consulta el valor actual antes de tocar nada

    Anota el valor original para poder revertir. Nunca cambies una variable sin saber en qué estaba.

    SHOW GLOBAL VARIABLES LIKE 'max_connections';
  2. 2

    Cambia una variable dinámica en caliente

    SET GLOBAL aplica de inmediato sin reiniciar, pero el cambio se pierde al reiniciar el servidor. Sirve para probar.

    SET GLOBAL max_connections = 500;
  3. 3

    Haz el cambio persistente

    SET PERSIST aplica el valor y lo guarda para que sobreviva a reinicios, escribiéndolo en mysqld-auto.cnf. Es la forma recomendada en MySQL 8.0.

    SET PERSIST max_connections = 500;
  4. 4

    Para variables que solo aplican al arranque, usa my.cnf

    Algunas variables (como innodb_buffer_pool_size en versiones antiguas o parámetros de arranque) van en el archivo de configuración y requieren reinicio del servicio.

    [mysqld]
    max_connections = 500
    
    # Luego reinicia el servicio:
    # sudo systemctl restart mysql

// el error común

Subir valores como innodb_buffer_pool_size o max_connections sin medir la RAM disponible puede impedir que MySQL arranque o hacer que el sistema operativo mate el proceso por falta de memoria. Cambia una variable a la vez, mide el efecto, y ten a mano el valor anterior para revertir.

// cuándo conviene un experto

El tuning de configuración depende del hardware, la carga y el patrón de consultas: copiar un my.cnf de internet suele hacer más daño que bien. En dba.mx ajustamos parámetros con base en métricas reales de tu servidor, con techo cerrado.

Agenda un Escaneo — desde USD $550

Esta guía es orientativa y usa comandos de referencia. En producción, adapta a tu versión y prueba en un ambiente seguro primero.