Explicamos cómo desinstalar la versión MySQL Server 5 en un servidor con Linux CentOS 7 y cómo instalar MySQL Server 8.

Requisitos para instalar MySQL 8 y desinstalar MySQL 5 en Linux CentOS 7

Necesitaremos disponer de un equipo con Linux CentOS 7. En nuestro caso con la distribución «minimal», la que no incluye modo gráfico, por lo que realizaremos el proceso desde la consola de comandos.

Para desinstalar e instalar paquetes requeriremos de un usuario con permisos suficientes en el sistema operativo Linux.

Para la descarga del paquete de instalación de MySQL 8 el equipo deberá tener conexión a Internet.

Comprobar versión actual de MySQL Server en Linux

Para comprobar la versión que tenemos instalada de MySQL Server en Linux podemos usar el siguiente comando:

Si tenemos MySQL Server instalado nos mostrará algo así:

Comprobar versión actual de MySQL Server en Linux

Con el texto: mysql Ver 14.14 Distrib 5.6.22, for Linux (x86_64) using EditLine wrapper.

También podremos obtener más información sobre la versión de MySQL Serer instalada accediendo al propio MySQL. Desde la línea de comandos de Linux, ejecutaremos el siguiente comando:

mysql -p

Nos solicitará contraseña del usuario de MySQL. La introduciremos y accederemos a la consola de MySQL Monitor. Para mostrar información de la versión actual de MySQL ejecutaremos la siguiente sentencia:

show variables like «vesion%»;

Nos mostrará algo así:

Comprobar versión actual de MySQL Server en Linux

Con las variables:

  • version: 5.6.22.
  • version_comment: MySQL Community Server (GPL).
  • version_compile_machine: x86_64.
  • version_compile_os: Linux.

Desinstalar versiones anteriores de MySQL en Linux CentOS 7

Para desinstalar una versión anterior de MySQL en Linux CentOS ejecutaremos el siguiente comando:

yum remove mysql mysql-server

Puede que nos pida confirmación, intruciremos «s» e INTRO para confirmar el proceso de desintalación.

Desinstalar versiones anteriores de MySQL en Linux CentOS 7

Si el proceso se ha ejecutado correctamente, al final, mostrará «¡Listo!». A partir de ahora MySQL Server habrá quedado desinstalado del equipo.

Instalar MySQL Server 8 en Linux CentOS 7

Descargaremos el paquete de instalación de MySQL Server 8 desde su web oficial. El enlace es el siguiente (a fecha de este artículo):

https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

Desde la carpeta /tmp, en Linux, usaremos el comando wget para descargar este archivo:

cd /tmp

wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

Instalar MySQL Server 8 en Linux CentOS 7

Prepararemos el paquete rpm descargado para su instalación con el comando:

rpm -ivh mysql80-community-release-el7-2.noarch.rpm

Instalar MySQL Server 8 en Linux CentOS 7

Y lo instalaremos con:

yum install mysql-server

Instalar MySQL Server 8 en Linux CentOS 7

Puede que nos pida confirmación, pulsaremos «s» e INTRO:

Instalar MySQL Server 8 en Linux CentOS 7

Una vez instalado MySQL Server 8 nos mostrará «¡Listo!»:

Instalar MySQL Server 8 en Linux CentOS 7

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

En primer lugar comprobaremos que el servicio de MySQL aún no se ha iniciado, podremos hacerlo con el siguiente comando:

systemctl status mysqld

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Antes de que se inicie hay que configurar la contraseña del usuario root, ejecutando el siguiente comando:

sudo grep ‘temporary password’ /var/log/mysqld.log

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Nos devolverá: «[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: contraseña_generada«

Ahora sí que podremos iniciar el servicio de MySQL Server, con el comando:

systemctl start mysqld

Y comprobaremos que se ha iniciado correctamente con el comando:

systemctl status mysqld

Veremos que nos indica «Active: active (running)»:

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Configuraremos la seguridad de MySQL ejecutando el siguiente comando:

mysql_secure_installation

Nos solicitará la contraseña para el usuario root de MySQL, la introduciremos y nos pedirá cambiarla, la cambiaremos. Pulsaremos «Y» e INTRO:

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Nos msotrará el nivel de validación de contraseña, podremos elegir entre:

  • LOW: solo comprobará que el tamaño de la contraseña sea igual o mayor a ocho caracteres.
  • MEDIUM: el tamaño de la contraseña de los usuarios será mayor o igual a ocho caracteres y, además, debe incluir algún número, alguna mayúscula y algún carácter especial.
  • STRONG: el tamaño de la contraseña de los usuarios será mayor o igual a ocho caracteres y, además, debe incluir algún número, alguna mayúscula, algún carácter especial y un fichero de diccionario.
Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Nos indicará si queremos eliminar los usuarios anónimos, por seguridad pulsaremos «Y» (sí):

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Indicaremos si queremos permitir que con el usuario root se pueda acceder desde fuera de este equipo:

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Nos solicitará si queremos eliminar la base de datos «test», pulsaremos «Y» para eliminarla:

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Por último, el asistente de seguridad nos solicitará si queremos recargar los privilegios de las tablas, pulsaremos «y». El asistente aplicará todos los cambios de seguridad en MySQL Server y mostrará «All done!»

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Por último, activaremos la carga de MySQL en el inicio del equipo, de forma que cuando se reinicie el sistema operativo se inicie el servicio de MySQL Server de forma automática. Para ello ejecutaremos el siguiente comando:

systemctl enable mysqld

Configuración MySQL Server 8 tras instalación en Linux CentOS 7

Acceso a MySQL Server desde la línea de comandos

Una vez instalado y configurado MySQL Server 8, podremos acceder desde la línea de comandos ejecutando:

mysql -p

Nos solicitará contraseña para el usuario root de MySQL, la introduciremos:

Acceso a MySQL Server desde la línea de comandos

Podremos, por ejemplo, listar todos los catálogos del sistema, con el comando MySQL:

show databases;

En una instalación limpia mostrará:

  • information_schema.
  • mysql.
  • performance_schema.
  • sys.
Acceso a MySQL Server desde la línea de comandos

Accediendo a uno de los catálogos, por ejemplo a «mysql», con:

uses mysql;

Podremos ver todas las tablas del catálogo, ejecutando:

show tables;

Acceso a MySQL Server desde la línea de comandos

Y, por supuesto, podremos ejecutar sentencias SQL. Por ejemplo, para mostrar el nombre de usuario y el host desde el que tiene acceso a MySQL:

select user,host from user;

Acceso a MySQL Server desde la línea de comandos

De esta forma nuestro servidor Linux CentOS 8 queda listo para su uso como servidor de base de datos MySQL Server.