como instalar mariadb en ubuntu

Cómo instalar MariaDB en Ubuntu 18.04 LTS

En esta entrada vamos a ver cómo instalar MariaDB en Ubuntu 18.04 LTS paso a paso, un reconocido servicio de bases de datos relacionales que muchos usuarios prefieren como alternativa a MySQL. Al final de este tutorial tendrás funcionando este servicio en tu servidor o VPS Ubuntu, ya sea la versión de los repositorios de Ubuntu o la última versión estable disponible en mariadb.org.

Antes de instalar MariaDB en Ubuntu 18.04 LTS

Para poder seguir esta guía de instalación de MariaDB Server en Ubuntu 18.04 LTS, partiremos de estos requisitos mínimos:

  • Una instalación reciente y actualizada de Ubuntu 18.04 LTS.
  • Un usuario con permisos de superusuario o root.
  • Conexión a Internet.

En este tutorial te presentamos dos opciones, bien instalar la versión de los repositorios de Ubuntu, que es MariaDB 10.1, o bien instalar la última versión estable desde los repositorios oficiales de MariaDB, MariaDB 10.4.

Cómo instalar MariaDB en Ubuntu 18.04 LTS

Si prefieres instalar MariaDB desde los repositorios de Ubuntu 18.04, sáltate la siguiente sección, ya que el resto de la guía es común, independientemente de qué fuente elijas para instalar los paquetes.

Instalar el repositorio de MariaDB

Para instalar MariaDB 10.4 en Ubuntu 18.04 desde los repositorios de mariadb.org necesitaremos algunas herramientas:

~$ sudo apt install -y software-properties-common

Hecho esto, incluimos la clave pública con la que se firman los paquetes de MariaDB:

~$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Y finalmente añadimos el repositorio oficial de MariaDB para Ubuntu 18.04 Bionic Beaver:

~$ sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.wtnet.de/mariadb/repo/10.4/ubuntu bionic main'

Instalar MariaDB en Ubuntu 18.04 LTS

Para instalar MariaDB en Ubuntu 18.04 LTS, tanto el servidor de bases de datos como el cliente de consola, usaremos el comando apt, siendo imporante actualizar previamente la información de los repositorios:

~$ sudo apt update

Con las listas de paquetes actualizadas, podemos descargar MariaDB Server:

~$ sudo apt -y install mariadb-server

Dependiendo de lo que se tenga instalado en el sistema con anterioridad, se descargará un mayor o menor número de dependencias.

En cualquier caso, terminada la descarga e instalación de paquetes de MariaDB, el servicio mariadb queda configurado y en funcionamiento por defecto. Esto lo podemos comprobar con el comando systemctl status mariadb:

como instalar mariadb en ubuntu 18.04 lts

Ya en la primera línea de la salida del comando, podremos ver el número de versión de MariaDB Server, y a continuación se muestra el estado del servicio mariadb.

A partir de este momento se puede realizar conexiones locales a través del cliente de consola mysql, que se instala como dependencia de MariaDB Server.

Cómo configurar MariadB en Ubuntu 18.04 LTS

Aunque el sistema está listo para trabajar, podemos configurar MariaDB en Ubuntu 18.04 con unos mínimos ajustes que mejoren su seguridad y nos faciliten el trabajo.

Configurar el usuario root de MariaDB

Cuando se instala MariaDB Server en Ubuntu nos econtramos con que el usuario root viene configurado por defecto sin contraseña y sólo es posible conectar con el cliente mysql mediante sudo.

instalar mariadb en ubuntu 18.04 lts

Esto es así porque el usuario root de MariaDB está configurado para usar el plugin de autenticación unix_socket, que no hace uso de autenticación por contraseña. En su lugar, el acceso se realiza a través del usuario de Ubuntu 18.04 que realiza la conexión (en este caso root, ya que al usar sudo es root realmente el que hace la conexión).

Puede que esta configuración te resulte interesante tal y como está pero si quisieras que cualquier usuario sin privilegios de sudo pueda acceder como root habrá que hacer un par de cambios:

  1. Configurar el plugin de auntenticación de root.
  2. Asignar una contraseña para root.

Cambiar la autenticación de root

En primer lugar desactivaremos el plugin unix_socket para root, de modo que use la autenticación estándar. Para ello conectamos con el cliente mysql:

~$ sudo mysql

Seleccionamos la base de datos mysql, que es la que guarda los datos de los usuarios:

> use mysql;

Y actualizamos el valor del campo plugin para el usuario root:

> update user set plugin='' where user='root';

Sólo queda actualizar la tabla de privilegios de MariaDB y salir del cliente:

> flush privileges;
> exit

Asignar un valor vacío al campo plugin hace que se use el plugin de autenticación por defecto.

Desde este momento cualquier usuario de Ubuntu puede conectar como root desde el cliente:

~$ mysql -u root
>

Sólo hay un pequeño inconveniente, y es que root no tiene contraseña y cualquier usuario del sistema Ubuntu puede acceder como administrador al servidor MariaDB.

Asignar una contraseña para root en MariaDB

Crear una contraseña para el usuario root de MariaDB es también muy sencillo. Simplemente accederemos con el cliente:

~$ mysql -u root

Seleccionamos la base de datos mysql y modificamos el campo password de la tabla user de la base de datos mysql para el usuario root:

> use mysql;
> update user set password=password('XXXXXXXX') where user='root';

No olvides refrescar los privilegios del sistema antes de cerrar el cliente.

Ahora sí que tendremos que utilizar contraseña para conectar a MariaDB como root:

~$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 45
Server version: 10.1.38-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Tú debes valorar qué enfoque resulta más interesante para trabajar con el superusuario de MariaDB Server en Ubuntu.

¿Qué hay del script mysql_secure_installation?

Si alguna vez usaste el script mysql_secure_installation para configurar un servidor MySQL en entornos Linux, debes saber que aunque está presente en la instalación de MariaDB no resulta muy útil.

Esto es así porque la instalación por defecto de MariaDB Server en Ubuntu 18.04 LTS…

  • No permite el acceso remoto como root.
  • Ha eliminado los usuarios anónimos.
  • No incluye una base de datos de pruebas.

Sí que permite asignar una contraseña para root, pero ya acabamos de ver cómo hacer eso y mucho más para configurar el usuario root.

Cómo crear un usuario administrador en MariaDB

En el caso de que necesites un usuario adicional de MariaDB (que no sea root) con privilegios totales para, por ejemplo, acceder al servidor remotamente, podemos usar el cliente mysql:

~$ mysql -u root -p

Creamos un usuario que pueda manejar todas las bases de datos con todos los privilegios y capacidad de traspasar privilegios sobre las bases a otros usuarios:

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

Como siempre, actualiza los privilegios y cierra el cliente.

Este nuevo usuario se conecta con el plugin de autenticación estándar y tiene permitido el acceso remoto.

Cómo permitir el acceso remoto a MariaDB en Ubuntu 18.04

La configuración por defecto de la instalación de MariaDB en Ubuntu 18.04 LTS no permite conexiones mediante acceso remoto.

Es una medida muy segura, pero en ocasiones puede ser interesante poder permitir este acceso remoto.

Para ello editaremos con privilegios de sudo el archivo /etc/mysql/mariadb.conf.d/50-server.cnf:

~$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

En este archivo buscaremos la directiva bind-address y veremos qué valor tiene asignado:

[mysqld]
...
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
...

Podemos apreciar que únicamente se permiten  conexiones desde la máquina local, ya que el valor de bind-address es 127.0.0.1, que suele ser la dirección IP de la interfaz loopback de cualquier sistema.

Si queremos permitir acceso remoto (a los usuarios que individualmente lo tengan permitido) editaremos con privilegios de sudo el archivo /etc/mysql/mariadb.conf.d/50-server.cnf y borramos o comentamos la directiva bind-address:

#bind-address           = 127.0.0.1

Los cambios no harán efecto hasta que reiniciemos MariaDB Server:

~$ sudo systemctl restart mariadb

Ahora ya es posible conectar a MariaDB Server remotamente desde otros sistemas con un cliente, ya sea de consola o gráfico.

Conclusión

Ahora que ya sabes cómo instalar MariaDB en Ubuntu 18.04 LTS estás listo para implantar complejos sistemas de aplicaciones multiusuario, web, etc.

Normalmente estas aplicaciones y sistemas solamente necesitan tener asignado una base de datos propia y un usuario con su correspondiente clave dentro de MariaDB. Por ello es recomendable adentrarse un poco en el manejo de bases, tablas y usuarios, pero eso ya escapa al objetivo de esta guía.

Si tienes cualquier pregunta, duda, sugerencia, etc. déjame un comentario.

¡Apoya este sitio!

Finalmente, si has encontrado útil este artículo sobre MariaDB en Ubuntu 18.04 y te gustaría colaborar con el mantenimiento de este portal, toda contribución, por mínima que sea, es bienvenida. ¡Gracias!

Valora esta entrada

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votos, promedio: 5,00 de 5)
Cargando…

2 comentarios en “Cómo instalar MariaDB en Ubuntu 18.04 LTS”

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies.

ACEPTAR
Aviso de cookies