cerrar

Acceso remoto MySQL por tunel

Ambito:
Bases de datos

Elija un método de conexión MySQL remota

Puede utilizar cualquiera de los siguientes métodos para acceder a sus bases de datos MySQL de forma remota:

  • Túnel SSH: este es el método más seguro. Configura un túnel SSH que reenvía un puerto en su computadora local al servidor MySQL remoto. El tráfico MySQL está cifrado mediante el túnel SSH.
  • Conexión directa: puede configurar una conexión directa entre su computadora local y el servidor MySQL remoto. Aunque este método es más fácil de configurar, no es tan seguro. Además, su sitio local debe tener una dirección IP dedicada (estática). Un sitio local que utilice una dirección IP dinámica perderá el acceso a MySQL cuando se le asigne una nueva dirección IP.

Método n.º 1: configurar un túnel SSH

El procedimiento que sigue para configurar un túnel SSH entre su computadora local y el servidor de Bolivia Host depende del sistema operativo de la computadora local.

Microsoft Windows

Para utilizar un túnel SSH en una computadora que ejecuta Microsoft Windows, necesita un programa cliente SSH. Bolivia Host recomienda utilizar PuTTY, que puedes descargar aquí . Una vez que haya descargado el ejecutable de PuTTY en su computadora local, puede configurar un túnel SSH.

Para configurar un túnel SSH en una computadora que ejecuta Microsoft Windows:

  1. Inicie PuTTY.
  2. En el panel Categoría, expanda Conexión, expanda SSH y luego haga clic en Túneles.
  3. En el cuadro de texto Puerto de origen de la sección Forwarded ports, escriba 3306. Este es el puerto local al que se reenviará. En el cuadro de texto Destination, escriba localhost:3306.
  4. Confirme que los botones de opción Local y Automático estén seleccionados.
  5. Haga clic en Agregar:
  6. Ventana de configuración de Putty para túnel.

  7. En el panel Categoría, haga clic en Sesión.

  8. En el cuadro de texto Nombre de host (o dirección IP), escriba el nombre de dominio o la dirección IP de su sitio web.

  9. En el cuadro de texto Puerto, escriba 7822.

  10. Confirme que el botón de opción Tipo de conexión esté configurado en SSH.

  11. Haga clic en Abrir:

    Panel de configuración de Putty para sesión.

  12. Si aparece una alerta de seguridad de PuTTY sobre la clave de host del servidor, haga clic en .
  13. Cuando eliniciar sesión comoAparece el mensaje, escriba su nombre de usuario de Bolivia Host y luego escriba su contraseña.
  14. Cuando aparece la línea de comando del servidor remoto, se establece el túnel SSH y puede usar sus aplicaciones cliente MySQL en la computadora local.

    Para verificar que PuTTY esté reenviando puertos correctamente, puede hacer clic en el icono en la esquina superior izquierda de la ventana de sesión de PuTTY y luego hacer clic enRegistro de eventos. Si el reenvío de puertos funciona correctamente, verá una línea similar a:

    Puerto local 3306 reenvío a localhost:3306

Mac OS X y Linux

Para establecer un túnel SSH en una computadora que ejecuta Mac OS X o Linux:

  1. Abra una ventana de terminal y escriba el siguiente comando en la línea de comando. Reemplazar usuario con su nombre de usuario de Bolivia Host y reemplace ejemplo.com con el nombre de dominio de su sitio:
    ssh -p 7822 usuario@ejemplo.com -L 3306:localhost:3306
  2. Escriba su contraseña y luego presione Entrar. Cuando aparece la línea de comando del servidor remoto, se establece el túnel SSH y puede usar sus aplicaciones cliente MySQL en la computadora local.

Método n.º 2: configurar una conexión directa

Para configurar una conexión directa entre su computadora local y el servidor MySQL, primero debe hacer tres cosas:

  • Confirme que se conectará desde una dirección IP dedicada (estática). Si tiene una dirección IP dinámica, como las que suelen proporcionar los proveedores de servicios de Internet, perderá el acceso a MySQL cuando la dirección IP cambie (por ejemplo, después de reiniciar el enrutador).
  • Habilite el acceso remoto a MySQL para su dirección IP en cPanel.

Ejemplo de conexión ODBC

El siguiente procedimiento demuestra cómo configurar una conexión ODBC remota:

  1. Inicie el Administrador de orígenes de datos ODBC.
  2. Haga clic en Agregar para agregar un nuevo origen de datos.
  3. En el cuadro de diálogo Crear nuevo origen de datos, haga clic en el controlador ODBC de MySQL.
  4. Haga clic en Finalizar para iniciar la Configuración de origen de datos ODBC/MySQL Connector.
  5. En el cuadro de diálogo Configuración de origen de datos ODBC/MySQL Connector, en el cuadro de texto Nombre de origen de datos, escriba un nombre descriptivo para el origen de datos.
  6. Confirme que se ha seleccionado Servidor TCP/IP.
  7. Realice una de las siguientes acciones:
  8. Si utiliza un túnel SSH, en el cuadro de texto Servidor TCP/IP, escriba localhost.
  9. Si utiliza una conexión directa, en el cuadro de texto Servidor TCP/IP, escriba el dominio o la dirección IP del servidor remoto.
  10. En el cuadro de texto Puerto, escriba 3306.
  11. En el cuadro de texto Usuario, escriba un nombre de usuario de base de datos que pueda conectarse a la base de datos remota.
  12. En el cuadro de texto Contraseña, escriba la contraseña para el nombre de usuario.
  13. Para probar la conexión, haga clic en Test:
  14. Cuadro de diálogo para la configuración del conector MySQL/fuente de datos ODBC

  15. Opcionalmente, puede utilizar una base de datos inicial para la conexión.
  16. Para completar la configuración, haga clic en OK

Solución de problemas

Si está realizando un trabajo de desarrollo en la computadora local, es posible que ya se esté ejecutando una copia local de MySQL en el puerto 3306. En este caso, aparece el siguiente error de conexión:

Mensaje de error con conflicto de puerto local.

Para solucionar este problema, cree un túnel con un puerto local alternativo y luego conéctese al servidor MySQL remoto en ese puerto.

  1. Si usa Putty para crear el túnel, use una alternativa. En este ejemplo, puerto 3307 esta siendo usado:

    Configuración de túnel Putty con puerto alternativo.

    La configuración de la sesión no cambia.

  2. Para Mac OS X o Linux, utilice el siguiente comando SSH para crear el túnel con un puerto local de 3307. usuario con su nombre de usuario de Bolivia Host y reemplace ejemplo.com con el nombre de dominio de su sitio:

    ssh -p 7822nombre de usuario@ejemplo.com-L 3307:localhost:3306
  3. Cree la conexión ODBC como se describió anteriormente, pero escriba 3307 en puerto (en lugar de3306).

    Cuadro de diálogo para configuración del conector MySQL/fuente de datos ODBC con puerto alternativo.

  4. Ahora debería poder conectarse.