jueves, 24 de octubre de 2019

Instalar MySQL en Ubuntu 18.04 y Debian

Buenas buenas! hoy les traemos un pequeño tutorial el Sistema Gestor de Bases de Datos de codigo abierto, MySQL, necesario para el Stack LAMP (Linux, Apache, MySQL, PHP/PEARL/Python), para aprender SQL o para lo que sea que lo necesitemos.


1er Paso - Instalación


Primero actualizamos el índice del paquete en el servidor apt:

$ sudo apt update

Luego instalamos el paquete predeterminado:

$ sudo apt install mysql-server

Hasta aqui tendremos instalado MySQL pero de manera insegura ya que no nos pidio contraseñas ni nada. Y esto es lo que vamos a configurar ahora.

2do Paso - Configurar MySQL

Primero ejecutamos el Script de seguridad:

$ sudo mysql_secure_installation

Esto hará que pasemos por una serie de indicaciones en las que podemos hacer algunos cambios en las opciones de seguridad de la instalación de MySQL. La primera indicación preguntara si queremos configurar un plugin para probar la solidez de nuestra contraseña (en este caso podemos elegir lo que querramos, esta en nosotros si lo queremos o no).

Lo importante es que la segunda indicación nos pedirá establecer una contraseña para el usuario root. Ingresamos una contraseña y luego confirmamos.

Desde este punto podemos presionar "ENTER-ENTER" hasta finalizar. Lo que hace en esa parte el asistente es eliminar las Bases de Datos de pruebas y Usuarios anónimos ademas de deshabilitar el inicio de sesión root remotos y cargara las nuevas reglas inmediatamente.

3er Paso - Ajustar la autenticacón y los privilegios de usuario (Opcional pero ALTAMENTE RECOMENDADO)

 Para los sistemas Ubuntu que usen MySQL 5.7 (y posteriores), el usuario root de MySQL esta configurado de forma predeterminada para autenticarse para usar el plugin auth_socket en vez de una contraseña. En muchos casos esto permite que la usabilidad y la seguridad sea mayor pero puede complicar las cosas cuando un programa externo (como por ejemplo PHPMyAdmin) quiera tener acceso al usuario.
 Entonces deberemos cambiar el método de autenticación de auth_socket a mysql_native_password. Para ello abrimos MySQL como root usando la siguiente instrucción en la consola de Linux:

$ sudo mysql

Luego usamos el siguiente comando para consultar el método de autenticación de las cuentas de usuario:

mysql>  SELECT user,authentication_string,plugin,host FROM mysql.user;
 
donde vemos que el usuario root se autentica con el plugin auth_socket. Para configurar que se autentique usando contraseña usamos el siguiente comando, asegurandose de cambiar donde dice contraseña por la contraseña que deseemos para root (nota, dejar las comillas):

mysql>  ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'contraseña';


y luego ejecutamos FLUSH PRIVILEGES para purgar los privilegios y se implementen los nuevos cambios.

mysql> FLUSH PRIVILEGES;

y nuevamente usamos el comando para ver los métodos de autenticación de los usuarios de MySQL

mysql>  SELECT user,authentication_string,plugin,host FROM mysql.us;

 y ya esta todo configurado asi que podremos salir usando el comando

mysql> exit

El resumen de pasos en consola se presentan en la siguiente imagen:


4to Paso - Probar instalación


Ahora simplemente nos queda probar que todo marche de forma correcta y para ello usamos el siguiente comando desde la consola de linux

$ systemctl status mysql.service

y vamos a ver algo como lo siguiente

img3

Nota: Si MySQL no esta corriendo, ejecutar el comando

$ sudo systemctl start mysql

Y con esto terminamos. :D

Esperamos que tengan esas bases de datos corriendo y funcionando luego de este sencillo tutorial. Un abrazo grande y gracias por pasarse! ;)














No hay comentarios.:

Publicar un comentario