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

FAQ: Configurar acceso remoto a MySQL en DirectAdmin

Actualizado el 27 de enero de 2026

Introducción

Conectar a tu base de datos MySQL desde fuera de tu servidor es una necesidad común, especialmente si trabajas con aplicaciones web, herramientas de desarrollo o equipos remotos. En este artículo, resolveremos las dudas más frecuentes sobre cómo configurar el acceso remoto a MySQL en DirectAdmin. Te guiaremos paso a paso, explicaremos conceptos clave y te daremos consejos prácticos para que puedas lograrlo sin complicaciones.

[INFO] Este FAQ está diseñado para usuarios de DirectAdmin con conocimientos básicos de hosting. Si eres nuevo en esto, no te preocupes, iremos despacio.


¿Qué es el acceso remoto a MySQL y por qué lo necesito?

Por defecto, MySQL en tu servidor solo acepta conexiones desde el mismo equipo (localhost). El acceso remoto te permite conectarte desde otras computadoras o servidores, por ejemplo:

  • Para gestionar bases de datos desde tu escritorio con herramientas como MySQL Workbench, HeidiSQL o DBeaver.
  • Para que una aplicación web alojada en otro servidor pueda leer/escribir datos en tu base de datos.
  • Para realizar copias de seguridad externas o migraciones de datos.

Sin embargo, abrir el acceso remoto implica riesgos de seguridad, por lo que debes hacerlo con cuidado.


Preguntas Frecuentes (FAQ)

1. ¿Cómo habilitar el acceso remoto a MySQL en DirectAdmin?

El proceso consta de dos partes: configurar el servidor MySQL y luego otorgar permisos al usuario de la base de datos.

Paso 1: Configurar MySQL para aceptar conexiones externas

  1. Accede al panel de DirectAdmin con tu usuario administrador o reseller.
  2. Ve a "Account Manager" > "MySQL Management" o busca "MySQL" en el menú.
  3. Dentro de la sección MySQL, busca la opción "Remote MySQL" o "Allow remote connections". En algunos paneles, puede estar en "Advanced Features".
  4. Añade la dirección IP desde la que te conectarás. Puedes:
    • Agregar una IP específica (ej. 192.168.1.100).
    • Usar % para permitir cualquier IP (no recomendado por seguridad).
    • Usar un rango de IPs (ej. 192.168.1.%).
  5. Guarda los cambios. DirectAdmin actualizará automáticamente la configuración de MySQL y reiniciará el servicio.

[WARNING] Permitir acceso desde % (todas las IPs) es muy riesgoso. Siempre que puedas, limita las conexiones a direcciones IP específicas o a tu red local.

Paso 2: Otorgar permisos al usuario de la base de datos

Aunque hayas habilitado el acceso remoto, el usuario de MySQL debe tener permisos para conectarse desde fuera. Hazlo desde phpMyAdmin o la línea de comandos:

Opción A: Desde phpMyAdmin (recomendado para principiantes)

  1. En DirectAdmin, ve a "phpMyAdmin" (suele estar en el menú de bases de datos).
  2. Selecciona la base de datos que quieres gestionar.
  3. Ve a la pestaña "Privilegios" y edita el usuario.
  4. En el campo "Host", cambia localhost por la IP desde la que te conectarás (o % si es necesario).
  5. Guarda los cambios.

Opción B: Desde la línea de comandos (SSH)

Si tienes acceso SSH, puedes ejecutar:

GRANT ALL PRIVILEGES ON basededatos.* TO 'usuario'@'IP_remota' IDENTIFIED BY 'contraseña';
FLUSH PRIVILEGES;

Reemplaza basededatos, usuario, IP_remota y contraseña con tus datos.

[TIP] Si no sabes qué IP tienes, visita sitios como whatismyip.com desde la máquina desde la que te conectarás.


2. ¿Qué puerto usa MySQL para conexiones remotas?

MySQL utiliza el puerto 3306 por defecto. Asegúrate de que tu firewall (tanto en el servidor como en tu red local) permita tráfico entrante/saliente en ese puerto.

En DirectAdmin, puedes verificar la configuración del firewall desde "Firewall" o "CSF" (ConfigServer Security & Firewall). Si usas CSF, añade el puerto 3306 a la lista de puertos permitidos (TCP_IN y TCP_OUT).

[INFO] En Syspanel (antes HestiaCP), el puerto de acceso al panel es el 2106, pero para MySQL sigue siendo el 3306. No confundas.


3. ¿Cómo conectarme a MySQL desde mi computadora?

Una vez configurado, puedes usar cualquier cliente MySQL. Aquí tienes un ejemplo con MySQL Workbench:

  1. Abre MySQL Workbench y haz clic en "+" para crear una nueva conexión.
  2. En "Connection Name", pon un nombre descriptivo.
  3. En "Hostname", escribe la IP pública de tu servidor (o el dominio si apunta a él).
  4. En "Port", deja 3306 (o el que hayas configurado).
  5. En "Username", pon el nombre del usuario de la base de datos.
  6. Haz clic en "Test Connection" e ingresa la contraseña.
  7. Si todo está bien, ¡conexión exitosa!

[WARNING] Si no puedes conectar, revisa:

  • Que la IP remota esté permitida en DirectAdmin.
  • Que el usuario tenga permisos desde esa IP.
  • Que el firewall no bloquee el puerto 3306.
  • Que tu proveedor de internet no bloquee puertos (algunos bloquean el 3306 por defecto).

4. ¿Es seguro tener acceso remoto a MySQL?

No del todo, pero puedes minimizar riesgos:

  • Usa contraseñas fuertes (mayúsculas, minúsculas, números, símbolos).
  • Limita las IPs permitidas a solo las necesarias.
  • Cambia el puerto default (3306) por uno no estándar (ej. 3307) para evitar escaneos automáticos. Esto se hace editando el archivo my.cnf y cambiando port = 3307.
  • Usa una VPN para conectarte a tu red privada antes de acceder a MySQL.
  • Activa SSL/TLS para cifrar la conexión (requiere configuración avanzada).

[INFO] Si tu servidor tiene IP pública, considera usar un túnel SSH en lugar de abrir MySQL directamente. Es más seguro y sencillo.


5. ¿Puedo tener múltiples usuarios remotos con diferentes permisos?

Sí, es una práctica recomendada. Por ejemplo:

  • Un usuario para desarrollo con permisos solo de lectura (SELECT).
  • Otro para producción con permisos completos (ALL PRIVILEGES).
  • Cada uno con su propia IP permitida.

En DirectAdmin, puedes crear usuarios adicionales desde "MySQL Management" y asignarles diferentes hosts y privilegios.


6. ¿Qué hago si no encuentro la opción "Remote MySQL" en DirectAdmin?

Algunas versiones de DirectAdmin no tienen esta opción visible. En ese caso, puedes:

  1. Editar manualmente el archivo de configuración de MySQL (/etc/my.cnf o /etc/mysql/my.cnf). Busca la línea bind-address = 127.0.0.1 y cámbiala a bind-address = 0.0.0.0 (o a tu IP pública). Luego reinicia MySQL:
    systemctl restart mysql
    
  2. Usar la línea de comandos para otorgar permisos como vimos antes.
  3. Contactar al soporte técnico de tu hosting si no tienes acceso SSH.

[WARNING] Editar archivos de configuración puede romper MySQL si no sabes lo que haces. Haz una copia de seguridad antes.


7. ¿Cómo revocar el acceso remoto a un usuario?

Si ya no necesitas conexiones remotas, revoca los permisos:

REVOKE ALL PRIVILEGES ON basededatos.* FROM 'usuario'@'IP_remota';
FLUSH PRIVILEGES;

O desde phpMyAdmin, edita el usuario y cambia su host a localhost.


8. ¿Puedo usar el acceso remoto para migrar bases de datos?

Sí, es una de las aplicaciones más comunes. Puedes usar herramientas como mysqldump o MySQL Workbench para exportar desde un servidor e importar en otro. Asegúrate de que ambos servidores tengan acceso remoto configurado temporalmente.

[TIP] Para migraciones grandes, usa un túnel SSH o una conexión VPN para evitar exponer MySQL a internet.


9. ¿Qué diferencia hay entre acceso remoto en DirectAdmin y en otros paneles como Syspanel?

En Syspanel (anteriormente HestiaCP), el proceso es similar pero la interfaz cambia. En Syspanel:

  • El acceso al panel es por el puerto 2106.
  • La configuración de MySQL remoto se hace desde "Bases de datos" > "Editar" en la base de datos correspondiente.
  • También puedes editar el archivo my.cnf manualmente.

[INFO] Si migras de DirectAdmin a Syspanel, recuerda que los pasos son análogos, solo cambian los nombres de las opciones.


10. ¿Por qué no puedo conectarme aunque todo parece configurado?

Posibles causas:

  • Firewall del servidor bloquea el puerto 3306. Revisa con iptables -L o desde CSF.
  • Firewall de tu red local (ej. router de oficina) bloquea salida al puerto 3306.
  • Proveedor de internet bloquea puertos no estándar.
  • El usuario no tiene permisos para la IP desde la que te conectas.
  • MySQL no está escuchando en todas las interfaces. Verifica con netstat -tulpn | grep 3306; debe mostrar 0.0.0.0:3306 o tu IP pública.

[TIP] Para diagnosticar, desde tu computadora remota ejecuta: telnet IP_DEL_SERVIDOR 3306. Si no se conecta, revisa los puntos anteriores.


Conclusión

Configurar el acceso remoto a MySQL en DirectAdmin es sencillo si sigues los pasos correctos y tomas precauciones de seguridad. Recuerda siempre:

  • Limitar las IPs permitidas.
  • Usar contraseñas fuertes.
  • Considerar alternativas más seguras como VPN o túneles SSH.

Si encuentras problemas, revisa el firewall, los permisos de usuario y la configuración de MySQL. Y si usas Syspanel, no olvides que el puerto del panel es el 2106, pero el de MySQL sigue siendo el 3306.

¡Esperamos que este FAQ te haya sido útil! Si tienes más dudas, no dudes en contactar a nuestro equipo de soporte.

¿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