MariaDB Instalación Debian Buster

De WikiSalud
Saltar a: navegación, buscar

Contenido

MariaDB

MariaDB logo.png

MariaDB es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL. Es desarrollado por Michael Widenius —fundador de MySQL—, la fundación MariaDB y la comunidad de desarrolladores de software libre.


Instalación

La instalación la realizaremos en debian Buster, por lo cual abriremos una terminal y como usuario root ejecutaremos los siguientes comandos:

su -

apt update

apt install mariadb-server

Asegurando MariaDB

Para el caso de Debian Buster, no es necesario realizar este proceso según algunas documentaciones, pero nosotros si lo haremos.


acontinuación, procederemos a ejecutar el script de seguridad, para modificar las credenciales al usuario root de la base de datos

mysql_secure_installation

Enter current password for root (enter for none): <enter>

Set root password? [Y/n] Y

New password:indicar la clave Re-enter new password:repetir la clave

Remove anonymous users? [Y/n] Y

Disallow root login remotely? [Y/n] Y


Remove test database and access to it? [Y/n] Y

Reload privilege tables now? [Y/n] Y

Si todo se hizo de manera correcta aparecerá el siguiente mensaje:

All done! If you've completed all of the above steps, your MariaDB installation should now be secure.

Ingresando a MariaDb

si como usuario root desde una terminal ejecutamos:

su -


mysql -u root

MariaDB [(none)]> quit

pero también podemos ingresar


Pero que pasa si lo hacemos desde una terminal como usuario normal:

es casi probable que nos de el siguiente error ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Para solucionar este problema, ingresamos como usuario root (su -) a una terminal y ejecutamos:

mysql -u root

use mysql;

select User, Plugin from user;

Mariabd terminal1.png


Como se observa en la imagen mariadb en su instalación por defecto la parte de seguridad para el usuario root la hace mediante el plugin unix_socket. Este sistema es muy seguro porque sólo permite conectar a MySQL como root si el usuario de Debian que hace la conexión es también root (o está usando sudo ejemplo: sudo mysql -u root) . Con este sistema no se necesita contraseña para root. Además, el usuario root sólo tiene acceso local, no se le permite el acceso remoto.

En algunos Sitios para asignar la clave al usuario root, y sin usar el sistema de seguridad plugin unix socket que trae por defecto, Mariadb, ejecutan lo siguiente, pero esto NO ES RECOMENDADO:

ALTER USER root@localhost IDENTIFIED VIA mysql_native_password USING PASSWORD("StronGP@SS")


RECOMENDADO

Pasar usar el plugin unix socket es mejor asignarle la clave a root así:

Por lo que bastará asignarle una clave al usuario root de mysql así: SET PASSWORD FOR 'root'@'localhost' = PASSWORD('clave');

ejemplo:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('R00t4dm1n');

flush privileges;

exit;


ahora para loguearnos ejecutariamos:

mysql -u root -p

escribir la clave 'R00t4dm1n'

Configurar acceso remoto

A diferencia de otros sistemas, en Debian 10 la instalación por defecto de MariaDB no permite conexiones remotas, solamente locales.

Para poder habilitar las conexiones remotas editaremos el archivo de configuracion de MariaDb 50-server.cnf así:

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

en la sección [mysqld] buscamos la linea bind-address = 127.0.0.1

Mariabd terminal2.png


Ahora solo bastara anteponer un # al comienzo de toda la linea para comentarla #bind-address = 127.0.0.1

Mariabd terminal3.png


Guardamos los cambios de este archivo de configuración y reiniciamos el servicio para que tengan efecto los cambios:

y reiniciamos el servicio de mariadb así:


sudo systemctl restart mariadb ó service mariadb restart


Configurar usuario Admin Remoto

Ahora crearemos un usuario que tenga permisos como el usuario root pero que pueda conectarse de manera remota así:

GRANT ALL ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Ejemplo:

GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'S3cr3t0' WITH GRANT OPTION;

FLUSH PRIVILEGES;

exit;

Este nuevo usuario podrá crear otros usuarios y bases de datos, administrar permisos y acceder de forma remota a MariaDB.


Finalmente, podremos ejecutar una terminal y como usuario normal indicar:

mysql -u admin -p

y luego escribir la clave S3cr3t0

Crear base de datos, usuario y asignar permisos

Para el ejemplo crearemos un usuario que tendrá todos los permisos sobre la base de datos llamada mapas

mysql -u admin -p

y luego escribir la clave S3cr3t0


create database mapas;
create user 'admin_mapas@localhost' identified by '123';
grant all privileges on mapas.* to admin_mapas@localhost identified by '123';
flush privileges;
exit;


Mariabd terminal5.png

Finalmente ingresaremos con el usuario recién creando, indicando la base de datos a la cual nos conectaremos (mapas) así:

mysql -u admin_mapas -p mapas
indica la clave 123

Sincronizar la zona horaria de MariaDB con Debian 10

abre una terminal y como usuario root (su -) ejecutaremos:

systemctl status mariadb

Mariabd terminal4.png

Y como resultado es probable que la hora de la base de datos no coincida con la hora de tu pc o servidor configurado.

Si esa marca horaria va adelantada (o retrasada) en una o más horas con respecto a la hora del sistema es muy posible que se deba a que el reloj de tiempo real o RTC no esté configurado en UTC, por lo que MariaDB aplicará el desfase de la zona horaria del sistema al RTC, de ahí la disparidad. Se soluciona configurando el RTC en horario UTC.


timedatectl
timedatectl list-timezones
timedatectl set-timezone America/El_Salvador

o si tienes un servidor ntp para sincronizar la hora, como es nuestro caso,puedes ejecutar como usuario root desde una terminal:

ntpdate -u ntp.salud.gob.sv

Referencias

https://es.wikipedia.org/wiki/MariaDB

https://mariadb.org/

https://computingforgeeks.com/how-to-install-mariadb-on-debian-10-buster/

https://www.tecmint.com/install-mariadb-database-in-debian-10/

https://chachocool.com/como-instalar-mariadb-en-debian-10-buster/

Modeladores


Esta página fue modificada por última vez el  22 de julio de 2019, a las 14:37

Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas