Documentos de Académico
Documentos de Profesional
Documentos de Cultura
comoinstalar.me/como-instalar-mysql-en-centos-7/
El Instalador January 9,
2019
En esta entrada vamos a ver cómo instalar MySQL en CentOS 7, para poder trabajar con
este motor de bases de datos relacionales. Imprescindible para entornos LAMP o LEMP,
para sitios WordPress, etc.
Si has intentado instalar MySQL en CentOS 7 desde los repositorios oficiales de CentOS es
posible que hayas comprobado que sólo está disponible la implementación libre de
MariaDB. A pesar de que intentes instalar el paquete mysql con el paquete que se instala
realmente es mariadb.
¿Qué podemos hacer? Es sencillo. En la página de descargas oficial de MySQL nos ofrecen
paquetes para actualizar los repositorios de diversas distribuciones de Linux añadiendo el
repositorio oficial de MySQL.
1/11
Página de descargas oficial de MySQL
Vemos una serie de enlaces para acceder a repositorios para distintos sistemas operativos.
Entre ellos está el que es la herramienta que usan distribuciones como Red Hat, Fedora y, lo
que nos interesa en este caso, CentOS.
2/11
Paquetes para descargar MySQL a través de Yum
Entre los paquetes que aparecen disponibles no existe uno específico para CentOS, pero no
hay problema. Elegiremos el paquete para Red Hat 7 y nos llevará a una pantalla donde nos
da la opción de registrarnos en MySQL o entrar en nuestra cuenta.
3/11
Paquete con repositorio de MySQL compatible para CentOS 7
No es necesario ni registrarse ni entrar en nuestra cuenta (si la tenemos), ya que más abajo
tenemos un enlace «No thanks, just start my dowload«. Podemos pinchar para descargar, o
copiar el enlace para pegarlo en consola, que es lo que haremos en este tutorial.
Con el comando wget descargaremos el paquete .rpm que actualizará los repositorios de
nuestro sistema:
~$ wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
Y tendremos descargado el paquete, listo para instalarlo con o rpm. Por variar un poco, lo
vamos a hacer con rpm:
Ahora tenemos más repositorios desde donde vamos a poder descargar MySQL 8 para
CentOS 7 a través de . Concretamente son 3 repositorios que podemos ver fácilmente
listando los repositorios activos y filtrando por los que contengan la palabra mysql:
4/11
~$ yum repolist enabled |grep mysql
mysql-connectors-community/i386 MySQL Connectors Community 65
mysql-tools-community/i386 MySQL Tools Community 53
mysql80-community/i386 MySQL 8.0 Community Server 28
Por suerte, el repositorio ofrece las versiones anteriores de MySQL Communnity Server.
Tendremos que editar la configuración del repositorio, desactivar la versión 8 y activar la
versión inmediatamente anterior.
5/11
[...]
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[...]
[...]
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[...]
6/11
~$ yum search mysql |grep -i ^mysql
[...]
Para las versiones de CentOS 7 de 64 bits, aún no he testeado si está disponible MySQL
Community Server 8. En cuanto lo compruebe, actualizaré el artículo.
Y ya lo tendremos instalado. Para comprobar la versión del servidor MySQL instalado basta
con comprobarlo desde consola con mysqld -V:
~$ mysqld -V
/usr/sbin/mysqld Ver 8.0.13 for Linux on x86_64 (MySQL Community Server (GPL))
Aunque el servicio MySQL está ya instalado, ni está activo ni arranca cada vez que inicia el
sistema. Para activar el inicio con el sistema y para arrancarlo manualmente lanzamos un
par de comandos:
Activar el servicio de MySQL para que arranque junto al sistema, no lo inicia; hay que iniciarlo
manualmente para tenerlo disponible de inmediato sin reiniciar el sistema.
Y ahora sí está iniciado MySQL Server, listo para trabajar con él.
~$ sudo mysql_secure_installation
Este script interactivo en primer lugar nos solicita la contraseña temporal de root para acto
seguido obligarnos a cambiarla. La nueva contraseña debe ser fuerte, por lo que debe
contener caracteres alfanuméricos, alguna mayúscula y algún carácter especial (fíjate en la
propia contraseña temporal).
8/11
El archivo de configuración principal del servicio MySQL en CentOS 7 es /etc/my.cnf. Si lo
editamos en principio no deberíamos encontrar la directiva bind-address de la sección
[mysqld]. Cuando esta directiva no aparece en el archivo de configuración, bind-address toma
un valor por defecto que es 0.0.0.0, lo que significa que el servicio de MySQL escucha
peticiones a través de todas las interfaces de red del sistema, que es lo que queremos para
un acceso remoto.
[...]
[mysqld]
[...]
bind-address=127.0.0.1
Tras lo cual debemos reiniciar el servicio para que los cambios tomen efecto. A diferencia de
otros servicios, MySQL Server no dispone de la opción de recargar la configuración sin
reiniciar el servicio.
9/11
~$ sudo firewall-cmd --permanent --add-service=mysql
success
~$ sudo firewall-cmd --reload
success
~$
Y quedará abierto el firewall para las conexiones remotas hacia el servidor MySQL.
Para ello, antes de conectar al servicio MySQL, a través de un acceso remoto por consola
configuraremos el firewall de forma temporal:
Realizaremos nuestro trabajo con el servidor MySQL, por ejemplo a través de MySQL
Workbench, y al terminarlo, desde consola dejaremos cerrado el firewall de nuevo:
Conclusión
Ya has visto cómo instalar MySQL en CentOS 7, es tan sencillo como añadir algunos
repositorios, configurar la versión que nos interese o esté disponible, descargar y
configurar.
Ahora tú decides si quieres trabajar con la versión del servidor de MySQL oficial o con
implementaciones libres como MariaDB.
Si tienes alguna corrección, duda, pregunta o sugerencia para algún otro tutorial, déjame
algún comentario.
10/11
Si este artículo te ha servido, puedes apoyarnos con una mínima aportación para ayudarnos
en la tarea de hacer más y mejores tutoriales de este tipo. ¡Gracias!
11/11