informatique:logiciels:mariadb

MariaDB

MariaDB, la base de données C'est un programme de gestion de base de données (SGBD). Il est le remplaçant Open Source de MySQL et son développement est très actif.

Systèmes compatibles
Debian MX Linux Raspbian Ubuntu

Notions abordées
Terminal Linux SQL

Version du document

  • Rédacteurs / correcteurs : Cédric Abonnel
  • Dernière relecture : 07/05/2020
  • Commentez gratuitement et sans inscription dans Discussion

L'installation de MariaDB se distingue par l'installation de la partie serveur appelée mariadb-server et la partie cliente nommée mariadb-client.

sudo apt install mariadb-client mariadb-server

Sécuriser l'installation avec la commande suivante :

sudo mysql_secure_installation

Les réponses à saisir sont les suivantes :

Enter current password for root (enter for none):
# Par défaut ce n'est rien (none). Ne rien saisir et appuyer sur la touche Entrée

Set root password? [Y/n] =>
# Y

New password: 
# Saisir un nouveau mot de passe

Re-enter new password: 
# Saisir un nouveau mot de passe

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

Vous pouvez vérifier le bon fonctionnement de votre service en tapant la commande suivante :

sudo systemctl status mariadb

réponse à la commande sudo systemctl status mariadb

Vous pouvez vérifier en ligne de commande le service :

mysql -uroot -p

Résultat :

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 43
Server version: 5.5.55-0+deb8u1 (Debian)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql> 

Une fois connecté tapez la commande :

SHOW DATABASES;

Vous obtiendrez le résultat suivant :

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

Arrêter le service mariaDB :

sudo systemctl stop mariadb

Démarrer mariaDb en mode secouru, en ignorant le table des droits :

sudo mysqld_safe --skip-grant-tables &

Se connecter en root pour effectuer des modifications :

mysql -u root

Dans la console MySQL, on saisi ce bloc d'instructions :

use mysql;
UPDATE user set password=PASSWORD("newPassWord") where user='root';
UPDATE user SET plugin="";
FLUSH PRIVILEGES;
exit

Arrêter MariaDB :

sudo cat /var/run/mysqld/mysqld.pid
sudo kill 26819 // numéro récupéré à la ligne précédente

Démarrer de MariaDb

sudo service mariadb start

Tester la connexion :

mysql -uroot -p

Voilà comment j'ai procédé pour restaurer les fichiers systèmes sans se soucier du format des bases de données (innoDB, MyISAM…). Il faut effectuer ces opérations sur un SGBD Maria DB vierge, car cela effacera tout le contenu actuel du SGBD.

Arrêt des services :

  sudo systemctl stop mariadb

Sauvegarde des fichiers actuels :

  sudo tar cvf mysql.tar.gz /var/lib/mysql

Noter les user et group utilisés actuellement :

  ls -lha /var/mysql

Par défaut c'est mysql:mysql avec les droits 660 pour les fichiers et 700 pour les dossiers le dossier racine est 755 pour mysql:mysql

On efface tout le monde

  sudo rm -fr /var/lib/mysql/*

on effectue la copie des anciens fichiers qui se trouvent sur /mnt/disk_18/mysql

  sudo cp -r /mnt/disk_18/mysql/* /var/lib/mysql/

changement du owner/group

  sudo chown -R mysql:mysql /var/lib/mysql

on démarre le service

  sudo systemctl start mariadb
Entrer votre commentaire. La syntaxe wiki est autorisée:
   ___   __  __   ___   ____    ___ 
  / _ | / / / /  / _ ) / __ \  / _ \
 / __ |/ /_/ /  / _  |/ /_/ / / ___/
/_/ |_|\____/  /____/ \____/ /_/
 
  • informatique/logiciels/mariadb.txt
  • Dernière modification: 2020/05/11 20:23
  • par Cédric ABONNEL