Diferentes formas de conectar un servidor MySQL remoto usando Ubuntu

Mehvish Ashiq 15 febrero 2024
  1. Diferentes formas de conectar un servidor MySQL remoto usando Ubuntu
  2. Conéctese desde la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para la manipulación de datos
  3. Conéctese desde la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para iniciar, detener y reiniciar el servidor
Diferentes formas de conectar un servidor MySQL remoto usando Ubuntu

Hoy aprenderemos cómo conectar un servidor MySQL remoto usando Ubuntu para manipular datos e iniciar y detener el servidor MySQL.

Diferentes formas de conectar un servidor MySQL remoto usando Ubuntu

  1. De la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para la manipulación de datos
  2. Desde la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para detener/iniciar el servidor MySQL

Conéctese desde la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para la manipulación de datos

Conéctese con un usuario personalizado

Aquí, aprenderemos cómo conectar un usuario personalizado que reside en un servidor MySQL remoto. Hemos creado un usuario llamado mehvish en el servidor MySQL remoto y le hemos otorgado todos los privilegios.

mysql> CREATE USER "mehvish"@"%" IDENTIFIED BY "PASSWORD";
#here % sign shows that this user can be connected remotely

Para conectarnos a un servidor MySQL remoto, debemos tener un mysql-client instalado en nuestra máquina. En Microsoft Windows 10, el cliente mysql se instala automáticamente al instalar el servidor MySQL.

Puede seguir este artículo para la instalación de MySQL en la máquina cliente.

Para realizar una conexión remota, necesitamos la dirección IP de una máquina host donde se aloja el servidor MySQL, el nombre de usuario y la contraseña de esa cuenta de usuario en particular. Para recuperar esa dirección IP, usamos el comando ip a o ifconfig en Ubuntu, donde reside el servidor MySQL.

Una vez que conocemos la dirección IP, el nombre de usuario y la contraseña, podemos usar el siguiente comando para conectarnos a un servidor MySQL remoto.

# Syntax
# mysql -h hostIP -u username -p password
$ mysql -h 192.168.56.102 -u mehvish -p ******

Lo más probable es que obtenga el siguiente error si intenta establecer una conexión remota por primera vez.

ERROR 2003 (HY000): Can't connect to MySQL server on '10.0.2.15:3306' (10060)

Para deshacernos de este error, necesitamos modificar el archivo de configuración en el servidor MySQL. Usamos el vim editor de texto para editar el archivo de configuración, pero puede usar cualquiera de sus opciones.

$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

Una vez que se abre el archivo, ubique la dirección de enlace en la sección [mysqld] y comente esto como se muestra en la siguiente captura de pantalla. ¿Por qué estamos comentando sobre la opción bind-address?

El servidor MySQL no permite conexiones remotas debido a su comportamiento predeterminado; solo permite que el localhost se conecte con el servidor MySQL. Es por eso que comente la dirección de enlace y permita que una máquina cliente remota establezca una conexión con el servidor MySQL.

Alternativamente, podemos hacer lo siguiente en lugar de comentar la bind_address.

  1. Podemos cambiar el valor de bind-address de 127.0.0.1 a 0.0.0.0.
  2. Si no existe la opción bind-address, podemos escribir skip-networking y skip-bind-address.

diferentes formas de conectar un servidor mysql remoto usando ubuntu- dirección de enlace de comentario en ubuntu

Podemos usar las siguientes opciones para editar y guardar el archivo de configuración usando el editor de texto vim.

  1. Presione I para editar el archivo.
  2. Presione Esc para salir del modo de edición.
  3. Presione Esc, escriba :w y presione Enter para guardar el archivo.
  4. Presione Esc, escriba :q y presione Enter para salir del archivo.
  5. Presione Esc, escriba :wq, y presione Enter para guardar y salir del archivo en un solo paso.
  6. Presione Esc, escriba :q!, y presione Enter para salir del archivo descartando todos los cambios.

Tenemos que reiniciar el servicio de la siguiente manera en la máquina donde está alojado el servidor MySQL.

$ sudo systemctl restart mysql

Ahora, use el siguiente comando nuevamente para conectarse con éxito con la cuenta de usuario mehvish que se encuentra en el servidor MySQL remoto. Recuerde, estamos usando la siguiente consulta en nuestra máquina local.

$ mysql -h 192.168.56.102 -u mehvish -p ******

Conéctese con un usuario raíz

Antes de sumergirnos en los detalles, verifiquemos si el usuario root acepta las conexiones remotas. Podemos usar el siguiente comando en Ubuntu, donde está alojado nuestro servidor MySQL.

mysql> SELECT USER, HOST from mysql.user;

Producción:

diferentes formas de conectar un servidor mysql remoto usando ubuntu - host de usuario en ubuntu

¿Viste que el usuario root solo se puede conectar desde localhost? Tenemos que otorgar acceso remoto usando los siguientes comandos para conectarlo de forma remota.

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
mysql> UPDATE mysql.user SET host='%' WHERE user='root';

Además, reinicie el servidor MySQL usando el siguiente comando.

$ sudo systemctl restart mysql

Ahora, compruebe si el usuario root acepta las conexiones remotas o no. Mira, el host del usuario raíz en la máquina del servidor es %, lo que muestra que podemos conectarnos de forma remota a la cuenta raíz.

diferentes formas de conectar un servidor mysql remoto usando ubuntu - root con acceso remoto en ubuntu

Ahora, podemos conectar al usuario root desde nuestra máquina local usando la siguiente consulta para leer/escribir datos.

$ mysql -h 192.168.56.102 -u root -p ******

¿Qué pasa si queremos iniciar, detener y reiniciar el servidor MySQL? Para eso, debemos estar en el shell del servidor MySQL, lo que significa que tenemos que conectarnos de manera que abra el shell del servidor en nuestra máquina.

¿Cómo podemos hacer eso? Veamos el siguiente capítulo.

Conéctese desde la máquina cliente Ubuntu 20.04 a la máquina servidor Ubuntu 20.04 para iniciar, detener y reiniciar el servidor

Tenemos que seguir los pasos dados para conectar un servidor remoto usando un shell seguro (también llamado shell de socket seguro).

  1. Instale ssh para obtener acceso de shell al servidor MySQL, alojado en Ubuntu Machine.

  2. Ahora, configura el ssh. Luego, abra la terminal en su máquina host (máquina local) y escriba las credenciales correctas para conectarse al servidor remoto.

    Puede usar cualquiera de los siguientes dependiendo de su situación.

    2.1. Utilice el comando ssh remote_host. Es el más sencillo y se usa cuando tenemos el mismo nombre de usuario en las máquinas remotas y locales.
    2.2. Utilice ssh nombre_de_usuario_remoto@host_remoto si el nombre de usuario es diferente en una máquina remota en comparación con la máquina local. Esto le proporcionará acceso al shell de la máquina del servidor.

  3. Podemos usar los siguientes comandos para funcionar según los requisitos.

Inicie el servidor MySQL:

$ sudo systemctl start mysql

Detener el servidor MySQL:

$ sudo systemctl stop mysql

Reinicie el servidor MySQL:

$ sudo systemctl restart mysql

Comprobar el estado del servidor MySQL:

$ sudo systemctl status mysql

Recuerde, el servidor MySQL se llama mysqld en su extremo, entonces es posible que deba usar el comando de la siguiente manera.

$ sudo /etc/init.d/mysql restart
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Artículo relacionado - MySQL Linux