J'ai récemment installé un plugin qui met en cache les requêtes API Amazon mais dont la table SQL gonfle énormément - plus de 5 Go à l'heure où j'écris ces lignes. Le problème, c'est que cela remplit la partition racine du serveur, qui est utilisée par défaut par MariaDB pour stocker les fichiers des bases de données.

MariaDB : changer le répertoire des bases de données sous Debian photo

Lorsque j'ai créé ce serveur, j'ai utilisé la configuration par défault d'OVH, ce qui est une erreur grossière : la partition racine (/) fait 10 Go alors que la partition /home fait 740 Go... même pour un desktop, on ne fait plus cela parce que cela laisse trop peu pour le système alors imaginez un peu pour un serveur !

Nous avons donc le choix entre re-partitionner le disque (autant vous dire que cela ne me tente que très moyennement) ou alors changer le dossier des bases SQL pour les mettre sous /home.

Ce tutoriel vous permet donc de délocaliser les bases de données MySQL/MariaDB sur une autre partition. Le serveur tourne sur la dernière version de Debian.

Vérification du chemin des bases MariaDB

Tout se passe via le terminal. Je vous conseille de faire une sauvegarde de vos bases avant de commencer.

Commençons par vérifier le dossier dans lequel se trouve nos bases de données:

mysql -u root -p

Entrez votre mot de passe root puis entrez la commande suivante:

select @@datadir;

Résultat:

+-----------------+
| @@datadir       |
+-----------------+
| /var/lib/mysql/ |
+-----------------+
1 row in set (0.00 sec)

Ajustement de systemd pour MariaDB

Ceci est une étape fondamentale du tutoriel. Si vous ne faites pas cela, MariaDB ne démarrera pas avec votre nouveau dossier car, par défaut, il n'a pas accès à /home. Il faut donc que nous lui donnions explicitement l'accès :

systemctl edit mariadb

Dans le fichier qui s'ouvre, entrez le code suivant:

[Service]
ProtectHome = false

Enregistrez le fichier tel quel, sans changer le nom. Le fichier que vous venez de créer est /etc/systemd/system/mariadb.service.d/override.conf

Appliquez maintenant les changements :

systemctl daemon-reload

Un nouveau répertoire pour nos bases de données

Nous pouvons maintenant créer le nouveau répertoire qui accueillera les fichiers de nos bases de données. Par simplicité, je choisis de tout mettre sous /home/mysql :

Act I Scene 1 Theseus and Hippolyta look ahead to their wedding day, in four days' time. Hermia plans to defy her father and elope with Lysander, but Helena reveals their plan to Lysander's rival, Demetrius. The scene takes place in Athens. The characters are : Duke TheseusHippolyta, Queen of the Amazons. Egeus and his daughter HermiaTwo suitors : Lysander and Demetrius Hermia is in love with Lysander. Egeus wants her to marry Demetrius or die.…

Pin It on Pinterest

Spelling error report

The following text will be sent to our editors: