🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo arreglar el error 'Can't connect to local MySQL server' en cPanel

Actualizado el 12 de enero de 2026

Primeros pasos: entiende qué está pasando

Cuando intentas acceder a tu base de datos desde cPanel o desde una aplicación web y aparece el mensaje "Can't connect to local MySQL server", lo primero que debes saber es que no eres el único. Es uno de los errores más comunes en hosting compartido y VPS, y casi siempre tiene una explicación clara y una solución sencilla.

Este error significa, literalmente, que tu aplicación o tu cliente de bases de datos no puede establecer una conexión con el servidor MySQL que está en tu mismo equipo (de ahí lo de "local"). Puede ocurrir por varias razones: el servicio está detenido, el puerto está bloqueado, los permisos son incorrectos o, simplemente, hay un problema de configuración en tu archivo de conexión.

A lo largo de esta guía te voy a explicar, paso a paso y sin tecnicismos innecesarios, cómo identificar la causa y solucionar mysql de forma definitiva. No necesitas ser un experto, solo seguir el orden que te propongo.


¿Por qué aparece el error mysql cpanel?

Antes de lanzarnos a hacer cambios, es importante que entiendas las causas más frecuentes. Esto te ahorrará tiempo y evitará que toques cosas que no debes.

Causas más comunes

  • El servicio MySQL está caído: Es la causa número uno. El servidor de bases de datos no está corriendo.
  • El puerto 3306 está bloqueado: A veces el firewall del sistema o el de tu proveedor impide la conexión.
  • El archivo de configuración tiene datos incorrectos: Puede que el nombre del host, el usuario o la contraseña no coincidan.
  • Los permisos del usuario de la base de datos son insuficientes: El usuario no tiene acceso desde localhost.
  • El disco está lleno: MySQL necesita espacio para escribir archivos temporales. Si el disco está al 100%, el servicio se detiene.
  • El archivo de socket de MySQL no existe: En sistemas Linux, MySQL usa un archivo de socket para conexiones locales. Si falta, todo falla.

Cómo comprobar si el servidor MySQL está caído

El primer paso para solucionar mysql es verificar si el servicio está activo. Esto lo puedes hacer desde cPanel o desde la terminal si tienes acceso SSH.

Desde cPanel

  1. Inicia sesión en tu cuenta de cPanel.
  2. Busca la sección "Bases de Datos" y haz clic en "MySQL® Databases".
  3. Si el servicio está caído, verás un mensaje de error en la parte superior o la página tardará mucho en cargar.
  4. En la esquina superior derecha de cPanel, busca el icono de "Service Status" o "Estado del Servicio". Ahí podrás ver si MySQL aparece en rojo (caído) o en verde (activo).

[INFO] Si no encuentras la opción de estado, también puedes probar a entrar en phpMyAdmin. Si te aparece el error de conexión, es muy probable que el servicio esté detenido.

Desde SSH (si tienes acceso)

Si tu plan de hosting incluye acceso SSH, puedes ejecutar este comando:

systemctl status mysql

O si usas MariaDB:

systemctl status mariadb

Si el servicio está inactivo, verás algo como Active: inactive (dead). En ese caso, puedes intentar levantarlo con:

systemctl start mysql

[WARNING] En un hosting compartido, normalmente no tienes permisos para reiniciar servicios. Si ese es tu caso, no intentes usar comandos SSH porque no funcionarán. Contacta con tu proveedor.


Cómo arreglar el error desde cPanel

Si confirmas que el servicio está caído y tu plan te lo permite, puedes intentar reiniciarlo desde la propia interfaz de cPanel, aunque no siempre está disponible esta opción.

Reiniciar MySQL desde WHM (si eres administrador)

Si tienes acceso a WHM (Web Host Manager), el panel de administración de tu servidor:

  1. Inicia sesión en WHM.
  2. Busca "Restart Services" o "Reiniciar Servicios".
  3. Selecciona "MySQL" o "MariaDB".
  4. Haz clic en "Restart" y espera unos segundos.

[TIP] Si no tienes WHM, es que tu hosting es administrado. En ese caso, abre un ticket de soporte con tu proveedor indicando el error: "Can't connect to local MySQL server". Ellos lo reiniciarán en minutos.


Revisa tu archivo de configuración de conexión

Otra causa muy frecuente del error mysql cpanel es que la aplicación que tienes instalada (WordPress, Joomla, PrestaShop, etc.) tiene mal configurados los datos de conexión.

Qué datos debes verificar

  • Host: Normalmente debe ser localhost o 127.0.0.1. Si usas un host remoto, el error no sería "local".
  • Usuario: El usuario debe ser el que creaste en cPanel, normalmente con el prefijo de tu cuenta (ejemplo: usuario_bd).
  • Contraseña: Asegúrate de que no tenga espacios ni caracteres extraños copiados por error.
  • Puerto: El puerto por defecto es 3306. Si tu proveedor usa otro, debe aparecer en la configuración.

Ejemplo en WordPress

Si usas WordPress, el archivo donde se configuran estos datos es wp-config.php. Puedes acceder a él desde el Administrador de Archivos de cPanel:

  1. Ve a "Administrador de Archivos".
  2. Navega hasta la carpeta public_html.
  3. Busca el archivo wp-config.php.
  4. Haz clic derecho y selecciona "Editar".

Verás líneas como estas:

define('DB_NAME', 'tu_usuario_bd');
define('DB_USER', 'tu_usuario_usuario');
define('DB_PASSWORD', 'tu_contraseña');
define('DB_HOST', 'localhost');

Comprueba que DB_HOST sea localhost y que el usuario y la contraseña coincidan exactamente con los que creaste en cPanel.

[WARNING] Si cambias la contraseña de la base de datos en cPanel, también debes actualizarla en este archivo. Es una de las causas más comunes de que no conecta mysql después de un cambio de contraseña.


Verifica los permisos del usuario de la base de datos

Otra causa habitual es que el usuario de la base de datos no tenga permisos para conectarse desde localhost. Para comprobarlo:

  1. Entra en cPanel.
  2. Ve a "MySQL® Databases".
  3. Busca la sección "Usuarios en bases de datos".
  4. Asegúrate de que tu usuario está añadido a la base de datos correcta.
  5. Si no aparece, selecciona el usuario y la base de datos en los menús desplegables y haz clic en "Añadir".

Después, marca "TODOS LOS PRIVILEGIOS" y guarda los cambios.

[INFO] Si acabas de crear el usuario y la base de datos, es posible que los permisos tarden unos minutos en propagarse. Espera 5 minutos y vuelve a intentarlo.


El problema del socket de MySQL

En sistemas Linux, MySQL se comunica con aplicaciones locales a través de un archivo llamado socket. Si este archivo no existe o tiene permisos incorrectos, verás el error "Can't connect to local MySQL server".

Esto suele pasar después de una actualización del sistema o de un reinicio brusco del servidor.

Cómo comprobarlo

Si tienes acceso SSH, ejecuta:

ls -la /var/run/mysqld/

Deberías ver un archivo llamado mysqld.sock. Si no existe, el servicio no está funcionando correctamente.

[TIP] En un hosting compartido no podrás hacer esto. Pero si tu proveedor usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso a estos detalles técnicos se realiza a través del puerto 2106. Desde ahí podrás ver el estado de los servicios si tienes permisos de administrador.


Comprueba el espacio en disco

Un disco lleno puede provocar que MySQL se detenga de forma inesperada. Para comprobarlo desde cPanel:

  1. Ve a la sección "Estadísticas" o "Uso de disco".
  2. Si ves que estás al 90% o más, es muy probable que ese sea el problema.

Qué hacer si el disco está lleno

  • Elimina archivos temporales: Ve a public_html y borra carpetas como tmp o cache.
  • Vacía la papelera de cPanel.
  • Si tienes copias de seguridad antiguas en el servidor, descárgalas a tu ordenador y elimínalas del servidor.
  • Contacta con tu proveedor para que limpien los logs del sistema.

[WARNING] Nunca borres archivos que no sepas qué son. Si tienes dudas, consulta con soporte antes de eliminar nada.


El firewall o el puerto bloqueado

Otra causa por la que no conecta mysql es que el puerto 3306 esté bloqueado por un firewall. Esto es más común en VPS que en hosting compartido.

Cómo verificarlo

Desde tu ordenador, puedes probar si el puerto está abierto con esta herramienta online: https://portchecker.co/. Introduce tu dominio y el puerto 3306.

Si el puerto aparece como cerrado, es posible que el firewall esté bloqueando la conexión. En un hosting compartido, esto no debería ocurrir porque el proveedor configura el firewall correctamente.


Solución avanzada: editar el archivo my.cnf

Si has llegado hasta aquí y nada funciona, puede que el archivo de configuración de MySQL tenga algún parámetro incorrecto. Este archivo se llama my.cnf y se encuentra en /etc/mysql/ o /etc/my.cnf.

[WARNING] Esta opción solo es para usuarios avanzados con acceso SSH y permisos de administrador. En un hosting compartido no podrás hacerlo y tampoco deberías intentarlo.

Qué buscar

  • La línea bind-address debe ser 127.0.0.1 o localhost.
  • La línea socket debe apuntar a una ruta válida, por ejemplo /var/run/mysqld/mysqld.sock.

Si modificas este archivo, debes reiniciar el servicio para que los cambios surtan efecto.


Contacta con tu proveedor de hosting

Si después de todos estos pasos el error mysql cpanel persiste, es hora de contactar con tu proveedor de hosting. Ellos tienen acceso directo al servidor y pueden reiniciar el servicio, revisar los logs y solucionar cualquier problema interno.

Qué información debes proporcionar

  • El mensaje de error exacto: "Can't connect to local MySQL server".
  • La fecha y hora en que empezó el problema.
  • Si hiciste algún cambio reciente (cambiar contraseña, instalar un plugin, etc.).
  • Si afecta a todas tus aplicaciones o solo a una.

Preguntas frecuentes (FAQ)

¿Puedo perder mis datos si el servidor MySQL está caído?

No. Tus datos siguen en el servidor, solo que no puedes acceder a ellos temporalmente. Una vez que el servicio se reinicie, todo volverá a la normalidad.

¿Cuánto tarda en solucionarse?

En la mayoría de los casos, si es un problema del servicio, el proveedor lo soluciona en menos de 30 minutos. Si es un problema de configuración, depende de ti y de lo que tardes en corregir los datos.

¿Por qué me pasa solo a mí?

Puede ser por un error en la configuración de tu aplicación, un cambio de contraseña reciente o un límite de recursos alcanzado. No siempre es un problema global del servidor.

¿Qué es Syspanel y por qué usan el puerto 2106?

Syspanel (anteriormente llamado HestiaCP) es un panel de control alternativo a cPanel que algunos proveedores usan para gestionar sus servidores. Si tu hosting usa Syspanel, el acceso a la gestión de servicios y bases de datos se realiza a través del puerto 2106. Es simplemente una interfaz diferente con las mismas funciones básicas.

¿Debo cambiar mi contraseña de la base de datos?

No necesariamente. Primero revisa que los datos en tu aplicación sean correctos. Cambiar la contraseña sin actualizar la aplicación solo empeorará el problema.


Resumen final

El error "Can't connect to local MySQL server" tiene solución en el 99% de los casos. El orden lógico para resolverlo es:

  1. Verifica si el servicio está caído desde cPanel.
  2. Comprueba los datos de conexión en tu aplicación.
  3. Revisa los permisos del usuario en MySQL® Databases.
  4. Asegúrate de que el disco no esté lleno.
  5. Si nada funciona, contacta con soporte.

Recuerda que en la mayoría de los casos, el problema es tan simple como un servicio detenido o una contraseña mal escrita. Con paciencia y siguiendo estos pasos, tu base de datos volverá a funcionar en poco tiempo.

[TIP] Si quieres evitar este error en el futuro, configura alertas en tu panel de control para que te avisen cuando el disco esté al 80% de su capacidad o cuando el servicio MySQL se detenga. Así podrás actuar antes de que afecte a tus visitantes.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel