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

Cómo conectar una base de datos remota en DirectAdmin (MySQL)

Actualizado el 29 de marzo de 2026

¿Qué es una base de datos remota y por qué la necesitas?

Imagina que tu sitio web vive en un servidor (en tu hosting) y tu base de datos, donde se guardan los usuarios, productos o publicaciones, vive en otro servidor completamente distinto. Eso es exactamente una base de datos remota DirectAdmin: una base de datos MySQL que no está en el mismo equipo que tu web, sino en un servidor externo al que te conectas a través de internet.

¿Cuándo te puede hacer falta? Por ejemplo, si tienes una aplicación móvil que necesita leer datos desde un servidor central, si gestionas varios sitios web que comparten la misma información, o si tu empresa usa un software de gestión (como un ERP) alojado en un servidor privado. En todos estos casos, necesitas que tu aplicación se conecte a ese MySQL remoto de forma segura y estable.

La buena noticia es que DirectAdmin, uno de los paneles de control de hosting más usados, incluye herramientas nativas para configurar esta conexión. No necesitas ser un gurú de la línea de comandos ni saber programar. Solo tienes que seguir unos pasos lógicos, entender algunos conceptos básicos y, sobre todo, tener claro que la seguridad es lo primero.

En esta guía extensa te voy a explicar, paso a paso y con un lenguaje muy claro, cómo conectar una base de datos remota en DirectAdmin. Vamos a ver desde qué es exactamente un host remoto, hasta cómo configurar los permisos, abrir los puertos correctos y solucionar los errores más comunes. Al final, serás capaz de hacerlo tú mismo sin depender de nadie.

Antes de empezar: conceptos que debes dominar

Para que todo esto no suene a chino, vamos a repasar tres conceptos clave. No te saltes esta parte, porque te ahorrará muchos quebraderos de cabeza.

El host remoto (o host de la base de datos)

El host remoto DirectAdmin es, en términos sencillos, la "dirección" del servidor donde está alojada tu base de datos. Puede ser una IP pública (por ejemplo, 203.0.113.10) o un nombre de dominio (por ejemplo, db.midominio.com). Cuando configures la conexión, tu aplicación necesitará saber a qué host debe ir a buscar los datos.

El usuario y los privilegios

No basta con saber la dirección. Necesitas un usuario y una contraseña que tengan permiso para acceder a esa base de datos desde fuera. En MySQL, los usuarios se crean con permisos específicos. No es lo mismo un usuario que solo puede leer datos que uno que puede modificarlos o borrarlos. Para una conexión remota, normalmente necesitarás un usuario con todos los privilegios sobre la base de datos concreta, pero nunca sobre todo el servidor.

El puerto de conexión

Por defecto, MySQL escucha en el puerto 3306. Cuando tu aplicación se conecta a una base de datos remota, debe indicar ese puerto. A veces, por seguridad, el administrador del servidor cambia el puerto, así que asegúrate de conocerlo. Si no lo has cambiado, el 3306 es el estándar.

Configurar una base de datos remota en DirectAdmin: paso a paso

Ahora sí, vamos a la acción. Te voy a guiar por el proceso completo, desde que entras en tu panel de DirectAdmin hasta que tu aplicación se conecta sin problemas.

Paso 1: Accede a tu panel de DirectAdmin

Abre tu navegador web y escribe la dirección de tu panel. Normalmente es algo como https://tu-dominio.com:2222 o https://tu-ip:2222. Introduce tu usuario y contraseña de administrador. Una vez dentro, busca la sección que se llama "MySQL Management" o "Administración de MySQL". En la mayoría de las versiones de DirectAdmin, la encontrarás en el menú principal, a veces bajo el apartado de "Cuentas" o "Servicios".

Paso 2: Crear la base de datos (si aún no existe)

Si la base de datos a la que te quieres conectar ya existe, sáltate este paso. Si no, debes crearla. Dentro de la sección de MySQL, busca un botón que diga "Create New Database" o "Crear nueva base de datos". Te pedirá un nombre. Un consejo: usa un prefijo que te ayude a identificarla, como miweb_bd. DirectAdmin suele añadir tu usuario como prefijo automáticamente, así que el nombre final podría ser tuusuario_miweb_bd. Anota ese nombre completo, porque lo necesitarás más tarde.

Paso 3: Crear un usuario para la conexión remota

Ahora necesitas un usuario que tenga permiso para acceder a esa base de datos desde otro servidor. En la misma sección de MySQL, busca la opción "Create New User" o "Crear nuevo usuario". Elige un nombre de usuario y una contraseña segura. Te recomiendo que uses una combinación de letras mayúsculas, minúsculas, números y símbolos.

Importante: Este usuario no debe ser el mismo que usas para entrar a DirectAdmin. Es un usuario exclusivo para la base de datos.

Paso 4: Asignar el usuario a la base de datos y definir el host remoto

Este es el paso más importante y donde mucha gente se pierde. Después de crear el usuario, debes asignarlo a la base de datos y, crucialmente, indicar desde qué IP o dominio se va a conectar. En DirectAdmin, esto se hace en la sección de "MySQL Management", buscando la base de datos que acabas de crear y haciendo clic en el icono de edición o en "Manage".

Verás una opción que dice "Access Hosts" o "Hosts" y un campo para añadir un nuevo host. Aquí tienes dos opciones:

  • Añadir una IP específica: Si sabes la IP pública del servidor desde el que te vas a conectar, escríbela. Por ejemplo, 203.0.113.25. Esto es lo más seguro, porque solo esa IP podrá acceder.
  • Añadir un comodín: Si no tienes una IP fija (por ejemplo, si te conectas desde tu casa con IP dinámica), puedes usar un comodín como %.midominio.com (para permitir cualquier subdominio de ese dominio) o incluso % (para permitir cualquier host). Ojo con esto último, es muy inseguro, ya que cualquiera podría intentar conectarse. Úsalo solo para pruebas y cámbialo después.

Selecciona el usuario que has creado, introduce el host remoto (la IP o el comodín) y guarda los cambios.

Paso 5: Configurar los privilegios del usuario

No basta con asignar el usuario. Debes darle permisos sobre la base de datos. En la misma pantalla de gestión, verás una lista de privilegios: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc. Para una conexión remota típica, te recomiendo marcar todos los privilegios sobre la base de datos que has creado. Así evitarás errores extraños de permisos. Si quieres ser más restrictivo y solo necesitas leer datos, marca únicamente SELECT. Pero para empezar y evitar frustraciones, dale todos los permisos.

Paso 6: Abrir el puerto 3306 en el firewall del servidor remoto

Aquí viene un paso que se suele olvidar. Aunque configures todo en DirectAdmin, el servidor remoto (donde está la base de datos) puede tener un firewall que bloquee las conexiones externas al puerto 3306. Esto es muy común en servidores en la nube (AWS, DigitalOcean, Google Cloud) o en servidores dedicados con CSF (ConfigServer Security & Firewall).

Necesitas acceder al servidor remoto por SSH (si tienes acceso) y añadir una regla para permitir el tráfico entrante en el puerto 3306 desde la IP de tu aplicación. Si usas CSF, el comando sería algo como:

csf -a 203.0.113.25

O si usas iptables:

iptables -A INPUT -p tcp --dport 3306 -s 203.0.113.25 -j ACCEPT

Si no sabes hacer esto, contacta con tu proveedor de hosting o con el administrador del servidor y pídeles que abran el puerto 3306 para tu IP específica. Nunca abras el puerto para todo el mundo (0.0.0.0/0) si no es absolutamente necesario.

Paso 7: Conectar desde tu aplicación

Ya tienes todo listo. Ahora, en tu aplicación (ya sea una web en PHP, una app en Python, un script en Node.js, etc.), debes configurar la conexión con los siguientes datos:

  • Host: La IP o dominio del servidor remoto (el que has puesto en el paso 4).
  • Puerto: 3306 (o el que hayas configurado).
  • Base de datos: El nombre completo que creaste (ej. tuusuario_miweb_bd).
  • Usuario: El usuario que creaste en el paso 3.
  • Contraseña: La contraseña de ese usuario.

Por ejemplo, en PHP con mysqli, sería algo así:

$conexion = new mysqli("203.0.113.10", "tuusuario", "tucontraseña", "tuusuario_miweb_bd", 3306);

O en MySQL Workbench, simplemente introduces esos datos en los campos correspondientes y listo.

Solución de problemas comunes: FAQ de conexión remota

Aunque sigas todos los pasos, es normal que algo falle a la primera. Aquí tienes los problemas más frecuentes y cómo resolverlos.

Error 1: "Access denied for user 'usuario'@'IP'"

Este es el error más típico. Significa que el usuario existe, pero no tiene permiso para conectarse desde la IP que está intentando acceder. Revisa el paso 4: asegúrate de que has añadido la IP correcta (la IP pública del servidor desde el que te conectas) y que has guardado los cambios. También verifica que el usuario tiene privilegios sobre la base de datos (paso 5).

Error 2: "Can't connect to MySQL server on 'host' (10060)"

Este error indica un problema de red o de firewall. El servidor remoto no está respondiendo. Verifica lo siguiente:

  1. ¿Puedes hacer ping al servidor remoto? Si no, es un problema de red.
  2. ¿El puerto 3306 está abierto? Usa una herramienta como telnet host 3306 o nc -zv host 3306 desde tu equipo para comprobarlo. Si no responde, es que el firewall lo está bloqueando. Revisa el paso 6.
  3. ¿El servidor MySQL está corriendo? Puede que el servicio se haya caído.

Error 3: "Unknown database 'nombre_base_datos'"

Esto significa que el nombre de la base de datos que has escrito en tu aplicación no coincide con el que has creado en DirectAdmin. Recuerda que DirectAdmin suele añadir tu usuario como prefijo. Revisa el nombre completo en el panel.

Error 4: "Connection timed out"

Similar al error 2. Es un problema de conectividad. Asegúrate de que tu IP pública es la que has configurado en el acceso remoto. A veces, si estás detrás de un router, la IP pública es diferente a la IP local. Usa un servicio como whatismyip.com para saber tu IP real.

Error 5: No puedo conectarme desde mi propio hosting, pero sí desde mi casa

Esto suele pasar porque tu hosting tiene una IP diferente a la de tu casa. Si tu web está en un hosting compartido, la IP desde la que se conecta tu web es la IP del servidor de tu hosting, no la tuya. Debes añadir esa IP al acceso remoto en DirectAdmin. Pregunta a tu proveedor de hosting cuál es la IP de salida de tu cuenta.

Consejos de seguridad avanzados para tu MySQL remoto

La seguridad no es opcional cuando hablamos de bases de datos remotas. Aquí tienes algunos consejos extra que te pueden salvar de un disgusto.

Usa una VPN o túnel SSH si es posible

Si la conexión es entre dos servidores que controlas, considera usar una VPN o un túnel SSH. Esto encripta todo el tráfico y evita que los datos viajen en texto plano por internet. MySQL no encripta la conexión por defecto, así que cualquier persona con las herramientas adecuadas podría espiar tus datos si intercepta el tráfico.

Limita el acceso por IP siempre que puedas

Nunca uses el comodín % en producción. Siempre especifica la IP o el rango de IPs que necesitan acceso. Si no sabes la IP de tu aplicación, averígualo antes de configurar. Es mucho más fácil cambiar una IP en la configuración que lidiar con una intrusión.

Crea usuarios con permisos mínimos

No le des todos los privilegios a un usuario si solo necesita leer datos. Si tu aplicación solo hace consultas SELECT, crea un usuario con solo ese privilegio. Así, si la aplicación es comprometida, el daño será limitado.

Cambia el puerto por defecto (opcional)

Si tienes control total sobre el servidor MySQL, considera cambiar el puerto de escucha (por ejemplo, al 3307). Esto no es una seguridad real, pero disuade a los escáneres automáticos que buscan el puerto 3306 abierto.

Mantén el software actualizado

Asegúrate de que tanto DirectAdmin como MySQL estén actualizados a las últimas versiones. Las actualizaciones suelen incluir parches de seguridad críticos.

Casos de uso reales y ejemplos prácticos

Para que veas la utilidad de todo esto, te dejo dos ejemplos muy comunes.

Ejemplo 1: Conectar una aplicación web externa a tu base de datos

Tienes una tienda online en un hosting (por ejemplo, en Syspanel, el panel de control que usa el puerto 2106 para su acceso). Pero también tienes una aplicación de inventario en otro servidor (por ejemplo, un VPS en DigitalOcean). Quieres que la aplicación de inventario lea los productos de la tienda.

  1. En DirectAdmin (el de la tienda), creas una base de datos y un usuario.
  2. Añades la IP pública de tu VPS como host remoto.
  3. En tu VPS, configuras la aplicación con la IP del hosting de la tienda y las credenciales.
  4. Abres el puerto 3306 en el firewall del hosting de la tienda para la IP del VPS.
  5. ¡Listo! Tu aplicación de inventario ya lee los productos.

Ejemplo 2: Compartir una base de datos entre dos sitios web

Tienes dos sitios web: uno en un hosting A y otro en un hosting B. Ambos necesitan acceder a la misma base de datos de usuarios para que el inicio de sesión sea único.

  1. En el hosting A (el que tiene la base de datos), creas la base de datos y el usuario.
  2. Añades la IP del hosting B como host remoto.
  3. Configuras el sitio web del hosting B para que use la IP del hosting A como host de MySQL.
  4. Asegúrate de que el firewall del hosting A permita conexiones desde la IP del hosting B en el puerto 3306.

Conclusión y resumen rápido

Conectar una base de datos remota DirectAdmin no es complicado si entiendes los conceptos básicos y sigues los pasos en orden. Para que no se te olvide nada, aquí tienes un resumen exprés:

  1. Crea la base de datos en DirectAdmin.
  2. Crea un usuario específico para la conexión remota.
  3. Asigna el usuario a la base de datos y define el host remoto (la IP desde la que te conectarás).
  4. Configura los privilegios del usuario.
  5. Abre el puerto 3306 en el firewall del servidor remoto, solo para tu IP.
  6. Configura tu aplicación con el host, puerto, usuario, contraseña y nombre de base de datos correctos.

Si te encuentras con errores, vuelve a esta guía y revisa la sección de solución de problemas. Y recuerda siempre la regla de oro: la seguridad primero. No expongas tu base de datos a todo internet, limita el acceso solo a lo que necesitas.

Con esto, ya tienes todo lo necesario para dominar la conexión remota a MySQL desde DirectAdmin. Si tienes más dudas, no dudes en consultar la documentación oficial de DirectAdmin o contactar con tu proveedor de hosting. ¡Buena suerte con tu proyecto!

¿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