MariaDB

De knowledge
Aller à la navigation Aller à la recherche

Suite de de sombres conflits mySql est devenu MariaDB. Tout reste pourtant compatible.

Création et configuration d'un "user"

Pour accéder à une base de donnée on crée un utilisateur dans un premier temps puis on lui donne les droits necessaires.

Exemple pour créer un utilisateur qui aura TOUS les droits sur une base (celui qui peut tout casser)

CREATE USER 'admin-base1'@'192.168.1.%' IDENTIFIED BY PASSWORD '*63D85DCA15EAFFC58C908FD2FAE50CCBC60C4EA2'
GRANT ALL PRIVILEGES ON base.* to 'admin-base1'@'192.168.1.%'

On crée d'abord un "user" qui pourra se loguer depuis le réseau local seulement avec un mot de passe dont on donne le "hash".

Ensuite un donne les droits complets sur la base (INSERT, DELETE, UPDATE... mais aussi CREATE, DROP....)

Pour générer le "hashcode" on utilise le console mariadb:

Par exemple on veut le hashcode pour le mot de passe 'toto'

SELECT PASSWORD('toto');

Qui nous donne:

+-------------------------------------------+
| PASSWORD('toto')                          |
+-------------------------------------------+
| *63D85DCA15EAFFC58C908FD2FAE50CCBC60C4EA2 |
+-------------------------------------------+
1 row in set (0.001 sec)

C'est cette valeur que l'on a utilisé pour le CREATE USER.

Sauvegardes et restauration des bases

L'outil utilisé est mariadb-backup (mariabackup) et il n'est pas installé par défaut.

Installation

Pour l'installer :

sudo apt install mariadb-backup
# Ou sur les versions anciennes (< Debian 10)
apt install mariadb-client # ce qui fait que, normalement dans ce as, il est installé avec le client.

Sauvegarde

On sauvegarde complete de toutes les base par :

sudo mariabackup --backup --target-dir=/var/mariadb/backup/ --user=root

On pourrait le faire sous un autre utilisateur en précisant le mot de passe du user utilisé.

les fichiers de sauvegarde sont dans /var.mariadb/backup avec la même structure que les fichiers d'origine. (un rsync fait la même chose!)