Cómo instalar MariaDB en CentOS 8

En esta entrada vamos a ver cómo instalar MariaDB en CentOS 8 / Centos Stream 8 paso a paso, de modo que al final de este tutorial tendrás este servicio de bases de datos en tu servidor o VPS CentOS, con o sin acceso remoto.

Antes de instalar MariaDB en CentOS 8

Si quieres seguir esta guía de instalación de MariaDB Server en CentOS 8 necesitas pasar estos requerimientos:

  • Un sistema CentOS 8 / CentOS Stream 8 actualizado.
  • Un usuario con permisos de sudo o el propio root.
  • Conexión a Internet.

Como seguramente ya cumples estos requisitos es el momento de regular correctamente la altura de nuestro escritorio y empezar a teclear comandos desde la terminal.

¡Ahorra 20,00 EUR!Bestseller No. 2 TRIUMPHKEY 120x60cm Escritorio de pie Ajustable en Altura con estantes para Monitor Escritorio de pie eléctrico Ajustable en Altura Estante de Almacenamiento Home Office Tablero de Empalme Blanco
¡Ahorra 44,00 EUR!Bestseller No. 3 SANODESK QS1 110 x 60 cm Escritorio Elevable Eléctrico con Tablero Escritorio Regulable en Altura Eléctrico Telescópico Bidireccional con Control de Memoria y Tecnología Anticolisión (Blanco)

Cómo instalar MariaDB en CentOS 8

Vamos a instalar MariaDB en CentOS 8 usando los repositorios de la distribución, por lo que el primer paso es actualizar la información de las listas de paquetes:

~$ sudo yum update -y

El paquete que necesitamos es mariadb-server, así que lo instalaremos con yum:

~$ sudo yum install -y mariadb-server

En unos instantes se habrán descargado e instalado el paquete mariadb-server y sus dependencias, tras lo que se creará en nuestro sistema CentOS 8 el servicio mariadb.service, o mariadb si prefieres el nombre corto.

Tras finalizar la instalación este servicio no ha quedado en ejecución ni tampoco configurado para iniciar automáticamente con el sistema, así que vamos a configurar estos aspectos.

Para disponer de inmediato de MariaDB podemos arrancarlo manualmente con el comando systemctl start:

~$ sudo systemctl start mariadb

Y si quieres que el servicio de bases de datos arranque automáticamente en cada inicio de CentOS 8 debes habilitarlo, en este caso con el comando systemctl enable:

~$ sudo systemctl enable mariadb

Ahora MariaDB estará siempre disponible en nuestra máquina CentOS 8 y podemos empezar a trabajar directamente con el servicio.

Puedes comprobar el estado de MariaDB Server con el comando systemctl status mariadb:

como instalar mariadb en centos 8

Instalar el cliente de MariaDB

Al instalar MariaDB como dependencia también se instalará el cliente de consola mysql, por lo que puedes conectar con el servicio y empezar a trabajar de inmediato.

Acceso como root a MariaDB

Al instalar MariaDB en CentOS 8 se crea el usuario root sin contraseña, por lo que cualquier usuario puede acceder como administrador de MariaDB sin problemas utilizando el cliente mysql:

~$ mysql -u root

mariadb en centos 8

Por tanto la primera acción será crear una contraseña.

Lo puedes hacer accediendo al servicio con el cliente mysql, pero francamente es más cómodo usar el comando interactivo mysql_secure_installation.

~$ sudo mysql_secure_installation

Este comando nos hará las siguientes preguntas:

  • Enter current password for root (enter for none): – Dejaremos en blanco, ya que inicialmente root no tiene contraseña.
  • Set root password? [Y/n] – Contestaremos Y, para establecer una contraseña de root. A continuación nos pedirá la contraseña y su confirmación.
  • Remove anonymous users? [Y/n] – Aunque la instalación por defecto no incluye usuarios anónimos, contestaremos Y.
  • Disallow root login remotely? [Y/n] – Contestaremos afirmativamente para impedir conexiones remotas con el usuario root.
  • Remove test database and access to it? [Y/n] – La instalación por defecto tampoco crea bases de datos de pruebas, aun así contestaremos Y.
  • Reload privilege tables now? [Y/n] – Siempre que se hacen este tipo de cambios conviene recargar las tablas de privilegios, así que contestaremos Y.

Crear un superusuario con acceso remoto

Si nos interesa poder administrar remotamente MariaDB Server usando algún cliente, crea un usuario con suficientes privilegios y acceso remoto.

Usando el cliente mysql puedes acceder como root, pero especificando la contraseña que has creado anteriormente:

~$ mysql -u root -p

Con una sola sentencia puedes crear un usuario capaz de crear bases de datos, usuarios y acceder remotamente:

> grant all privileges on *.* to chacho identified by 'XXXXXXXX' with grant option;

Antes de salir del cliente mysql es aconsejable refrescar la tabla de privilegios de MariaDB:

> flush privileges;
> exit

Acceder remotamente a MariaDB en CentOS 8

La instalación por defecto de MariaDB Server en CentOS 8 permite las conexiones remotas, por lo que puedes acceder desde otros sistemas o dispositivos con un cliente.

Sin embargo, necesitarás configurar el firewall de CentOS 8 para lograr la conexión.

Configurar el firewall de CentOS 8 para conexión remota

Vamos a añadir la regla o excepción en el firewall de CentOS 8 para permitir conexiones al servicio MariaDB:

~$ sudo firewall-cmd --permanent --add-service=mysql

Y aplicamos de inmediato esta nueva configuración del firewall de CentOS 8 para MariaDB:

~$ sudo firewall-cmd --reload

Ahora ya puedes conectar desde otro sistema de forma remota, por ejemplo usando el cliente mysql con el parámetro -h para especificar la dirección IP o dominio del servidor CentOS 8, el parámetro -u para indicar el usuario y el parámetro -p para que se solicite la contraseña:

~$ mysql -h centos8.local.lan -u chacho -p

instalar y configurar mariadb en centos 8

Cómo configurar MariaDB en CentOS 8

Si quieres configurar MariaDB en CentOS 8 o realizar cualquier ajuste, la configuración del servicio se reparte entre el archivo /etc/my.cnf y el directorio /etc/my.cnf.d/.

Por ejemplo, si quisieras desactivar el acceso remoto al servicio debes editar el archivo mariadb-server.cnf:

~$ sudo nano /etc/my.cnf.d/mariadb-server.cnf

Buscamos la directiva bind-address:

...
# Allow server to accept connections on all interfaces.
#
#bind-address=0.0.0.0
...

La activamos eliminando el carácter # al inicio de línea y cambiamos su valor a la dirección IP local o de localhost:

...
bind-address=127.0.0.1
...

Para que la nueva configuración haga efecto hay que reiniciar el servicio mariadb:

~$ sudo systemctl restart mariadb

Juego de caracteres por defecto para MariaDB en CentOS 8

MariaDB en CentOS 8 trabaja por defecto con el juego de caracteres latin1, cuando lo habitual sería trabajar con utf8 o utf8mb4. Si queremos realizar este ajuste, editamos mariadb-server.cnf:

~$ sudo nano /etc/my.cnf.d/mariadb-server.cnf

Y en la sección server añadimos la siguiente línea:

...
[server]
...
character-set-server=utf8
...

Puedes usar si lo prefieres otro juego de caracteres de tu interés, por ejemplo utf8mb4. En cualquier caso, una vez guardados los cambios tenemos que reiniciar el servicio para que MariaDB pase a usar el nuevo juego de caracteres por defecto:

~$ sudo systemctl restart mariadb

Conclusión

Ya has visto qué fácil es instalar MariaDB en CentOS 8 y dejar el servicio en ejecución, listo para crear las bases de datos que necesites e instalar las aplicaciones que requieren este tipo de motor de bases de datos.

Si tienes alguna sugerencia, duda o pregunta puedes dejar un comentario.

¡Apoya comoinstalar.me!

¿Te ha servido nuestra guía de instalación y configuración de este motor de bases de datos? Si es así y quieres agradecérnoslo contribuyendo al mantenimiento de este sitio y la creación de nuevas guías y tutoriales puedes hacerlo dejando 1 $ de propina con PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

Valora esta entrada

5/5 - (2 votos)

Deja un comentario