Alojar la(s) base(s) de datos y las aplicaciones en el mismo servidor web no es inusual.
Sin embargo, dado el alcance cada vez mayor de las aplicaciones, muchas organizaciones se están orientando hacia un entorno más distribuido. Un servidor de base de datos independiente puede mejorar la seguridad y permite escalar rápidamente los recursos. Entender cómo gestionar eficazmente los recursos y conexiones remotos en el entorno distribuido se ha convertido en un requisito esencial de muchos proyectos.
Imagina que formas parte de un gran equipo de desarrolladores con múltiples funciones, que trabajan en grandes productos de software con complejos esquemas y conexiones de bases de datos.
Necesitas trabajar con consultas SQL y crear una conexión remota desde varias ubicaciones. Para habilitar la conexión remota MySQL, tienes que conceder acceso remoto MySQL en tu servidor de alojamiento y poner en la lista blanca las IP de los puntos de conexión entrantes.
Aunque se trata de un proceso sencillo, no es muy seguro. Un enfoque mejor es añadir desarrolladores como miembros del equipo a nivel de la solución de alojamiento y luego permitirles utilizar el soporte MySQL para conexiones remotas para conectarse a la base de datos a distancia. Esto crea un entorno seguro en el que los desarrolladores remotos pueden trabajar con una base de datos centralizada.
En este artículo, te mostraré dos métodos de conexión a un servidor remoto MySQL para trabajar a distancia de forma eficiente.
Método 1: Conectarse a la base de datos MySQL remota desde la línea de comandos
Método 2: Activar la conexión MySQL remota mediante la plataforma Cloudways
En la plataforma de alojamiento PHP de Cloudways, puedes habilitar fácilmente el acceso remoto a MySQL siguiendo los pocos pasos que se indican en este artículo. Por defecto, Cloudways no permite el acceso a MySQL desde hosts remotos debido a los riesgos de seguridad inherentes para los servidores y las aplicaciones.
Mejora la velocidad de tu aplicación PHP en un 300
Cloudways te ofrece servidores dedicados con almacenamiento SSD, rendimiento personalizado, una pila optimizada y mucho más para conseguir tiempos de carga un 300% más rápidos.
Cómo activar la conexión remota a MySQL mediante la línea de comandos
Para conectar una base de datos MySQL remota a través de la línea de comandos, sólo tienes que seguir los pasos que se indican a continuación.
Abre el terminal SSH de Cloudways y proporciona el nombre y la contraseña de la base de datos de tu aplicación utilizando el siguiente comando:
mysql -u USERNAME -p
En el indicador Introducir contraseña, escribe tu contraseña. Cuando escribas la contraseña correcta, aparecerá el indicador mysql>.

Tras habilitar el acceso remoto a MySQL, sólo tienes que escribir el siguiente comando para obtener la lista de todas las bases de datos:
show databases;

activar el acceso remoto a MySQL
Para permitir el acceso remoto a la base de datos MySQL, escribe el siguiente comando en el indicador mysql>, sustituyendo DBNAME por la base de datos a la que quieres acceder:
use DBNAME;

Una vez que se te haya concedido el acceso remoto a MySQL, podrás ejecutar consultas SQL, listar tablas y realizar tus otras tareas. Para ver una lista de comandos de MySQL, escribe help en el indicador mysql>.
Para salir del programa MySQL, escribe \q en el indicador mysql>.
Conceder acceso remoto a la base de datos MySQL
Para conceder acceso a un usuario desde un host remoto, debes seguir estos pasos. Accede a tu servidor MySQL localmente, como usuario root, utilizando el siguiente comando:
mysql -u root -p

Utiliza un comando GRANT con el siguiente formato para permitir el acceso al usuario remoto. Asegúrate de cambiar 1.2.3.4 por la dirección IP que habías obtenido anteriormente. También debes cambiar mi_contraseña por la contraseña que quieras utilizar para “demoempleado”.
mysql> GRANT ALL ON demoDatabase.* TO demoemployee@'1.5.6.4' IDENTIFIED BY 'my_password';
CONSEJO: Revocar el acceso remoto a la base de datos MySQL
Si accidentalmente has concedido acceso a un usuario, puedes revocarlo muy fácilmente.
El siguiente comando revocará todas las opciones de acceso para USERNAME de todas las máquinas:
mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM “USERNAME”@“%”;
Lo siguiente revocará todas las opciones de USERNAME de una IP determinada:
mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM “USERNAME”@“1.2.3.4”;
Es mejor comprobar la tabla information_schema.user_privileges después de ejecutar el comando REVOKE para confirmar que la acción de revocación ha actualizado los derechos de acceso.
Cómo Activar la Conexión Remota a MySQL Utilizando la Plataforma Cloudways
- Paso 1: Añadir un desarrollador como miembro del equipo
- Paso 2: Lista blanca de IPs
- Paso 3: Aplicar la configuración de acceso remoto
- Paso 4: Conexión cliente MySQL
Añadir un desarrollador como miembro del equipo
En Cloudways hay dos formas de dar acceso a los desarrolladores. La primera es darles acceso SFTP. La segunda es añadirlos como miembros del equipo para que se sientan cómodos y puedan ser más independientes con sus servidores y aplicaciones. Para permitir el acceso remoto a MySQL, la mejor opción es añadir primero a tu desarrollador como miembro del equipo, antes de concederle los permisos y poner en la lista blanca su IP pública.
Nota: Sólo los propietarios de cuentas pueden crear Miembros de Equipo. Si una dirección de correo electrónico ya está asociada a una cuenta Cloudways (de prueba o completa), no podrá utilizarse como cuenta de miembro de equipo.
Sólo tienes que acceder a la Plataforma Cloudways con tus credenciales y, a continuación, hacer clic en el subtítulo “Equipo” del menú superior.

Ahora, haz clic en el icono Añadir de la barra de menú superior y elige Añadir Miembro.

Proporciona el nombre y la dirección de correo electrónico del miembro de tu equipo y selecciona el Título del Puesto en el menú desplegable. Una vez hecho esto, establece su estado en Activo.

Lista blanca IP del desarrollador
El siguiente paso es encontrar tu IP pública y añadirla al servidor objetivo. A continuación, pasa a la página de detalles de acceso al servidor y pulsa el botón seguridad tab. Añade la dirección IP al campo » Añadir IP a la lista blanca“y haz clic en el botón”Añadir«. Puedes utilizar este método para añadir varias direcciones IP si lo necesitas. Después de esto, simplemente pulsa el botón guardar botón.
También puedes utilizar sitios como whatismyip para encontrar tu IP pública.

Aplicar configuraciones de acceso remoto
Al poner tu IP en la lista blanca, puedes copiar las credenciales de tu base de datos de la página de detalles de acceso a la aplicación y añadirlas a tu código de conexión PHP de esta forma:
<?php
function getdb(){
$servername = "46.101.5.233"; // put your cloudways server IP here
$username = "qxxfumxxxbd";
$password = "xxxxbQxxmM";
$db = "qxxfumxxxbd";
try {
$conn = mysqli_connect($servername, $username, $password, $db);
//echo "Connected successfully";
}
catch(exception $e)
{
echo "Connection failed: " . $e->getMessage();
}
return $conn;
}
Como puedes ver arriba, he añadido la dirección IP del servidor Cloudways en la conexión host. Eso es todo lo que necesitas para conceder acceso remoto a MySQL. Ya puedes crear consultas y manipular la base de datos.
Conexión Cliente MYSQL
En la explicación anterior, he explicado cómo configurar una conexión remota MySQL en Cloudways y luego utilizarla en tu código. A veces, sin embargo, necesitas utilizar clientes MySQL para trabajar con bases de datos. También puedes conectar clientes como SQLYOG y Mysql workbench. En SQLyog sólo tienes que pasar la IP del servidor Cloudways y las credenciales de la base de datos para crear la conexión a la base de datos.

Ahora verás que tu base de datos está conectada a SQLyog.

P: ¿Cómo proporcionar acceso remoto a una base de datos MySQL existente?
R: Los siguientes comandos concederán acceso remoto a un usuario a una base de datos existente:
update db set Host=“136.157.33.109” where Db=“yourDBname”;
update user set Host=“136.157.33.109” where user=“user1”;
Ahora el usuario1 puede acceder a tuDBname desde una ubicación remota identificada por la IP 136.157.33.109
P: ¿Por qué está desactivado por defecto el acceso remoto al servidor de bases de datos MySQL?
R: El acceso remoto al servidor de base de datos MySQL está desactivado por motivos de seguridad.
P: ¿Cómo puedo probar la conexión remota a la base de datos MySQL?
R: Utiliza el comando
mysql -h HOST -u USERNAME -p CONTRASEÑA
A través del intérprete de comandos de MySQL, no olvides ejecutar el comando show databases para asegurarte de que tienes los privilegios adecuados en la máquina remota.
Mejora la velocidad de tu aplicación PHP en un 300
Cloudways te ofrece servidores dedicados con almacenamiento SSD, rendimiento personalizado, una pila optimizada y mucho más para conseguir tiempos de carga un 300% más rápidos.
Palabras finales
Cloudways ofrece a los desarrolladores y propietarios de empresas de software una forma sencilla de trabajar con tranquilidad y centrarse en el proyecto que tienen delante. Al igual que habilitar la conexión remota MySQL, también podrás completar muchas otras acciones con sólo unos clics, como instalar certificados SSL, CDN, gestión de DNS, etc. Todo lo que tienes que hacer para acceder a todo lo que podemos ofrecerte es registrarte, desde donde podrás poner en marcha tus servidores y aplicaciones sin apenas complicaciones, ¡gracias a esta sencilla guía!
Start Growing with Cloudways Today.
Our Clients Love us because we never compromise on these
Shahzeb Ahmed
Un creativo de día (con una taza de té) y un creativo de noche. Ahmad Kamran es redactor de contenidos estacionales y Ejecutivo de Marketing Senior en Cloudways. Puedes encontrarle en su escritorio escribiendo, elaborando estrategias o jugando. Y en caso de que no puedas encontrarle aquí, estará en la montaña o junto a la orilla del río.