Quantcast
Channel: fred – memo-linux.com
Viewing all articles
Browse latest Browse all 515

MariaDB: déplacer le répertoire /var/lib/mysql

$
0
0

Un mémo sur comment déplacer le répertoire /var/lib/mysql vers la partition /home afin d’éviter la saturation de la partition système du serveur.

Dans le cas présent, le déplacement du répertoire hébergeant les bases de données, a été déplacé après saturation de la partition système. Ce qui a eu pour conséquence d’arrêter le serveur MariaDB de façon brutal.

Déplacer le répertoire /var/lib/mysql

  • Stopper le serveur MariaDB, si ce n’est pas déjà fait :
systemctl stop mariadb.service
  • Déplacer le répertoire /var/lib/mysql vers /home/{user}/ (remplacer la variable {user} pour votre login)
  • mv /var/lib/mysql /home/{user}/
  • Donner les droits mysql au répertoire :
  • chown -R mysql:mysql /home/{user}/mysql

    Modifier le chemin de la base de données dans le fichier de configuration de MariaDB

    • Éditer le fichier /etc/mysql/mariadb.conf.d/50-servers.cnf :
    nano /etc/mysql/mariadb.conf.d/50-servers.cnf
  • Changer le chemin de la base de données :
  • datadir         = /var/lib/mysql

    par

    datadir         = /home/{user}/mysql

    Modifier le service mariadb.service

    Pour éviter l’erreur : mysql can’t creat test files .lower-test

    • Éditer le fichier /etc/systemd/system/multi-user.target.wants/mariadb.service :
    nano /etc/systemd/system/multi-user.target.wants/mariadb.service
  • Commenter la ligne ProtectHome=true :
  • #ProtectHome=true
  • Recharger systemd :
  • systemctl daemon-reload

    Supprimer le fichier tc.log

    Supprimer le fichier tc.log afin d’éviter l’erreur : [ERROR] Can’t init tc log

    rm /home/{user}/mysql/tc.log

    Démarer le serveur MariaDB

    A ce stade, il est possible de redémarrer le serveur de base de données MariaDB :

    systemctl start mariadb.service

    Réparer les tables de la base de données

    Par précaution, une tache d’auto-réparation de table va être exécutées afin d’éviter l’erreur : is marked as crashed and should be repaired

    mysqlcheck -u root -p --auto-repair --check database

    Viewing all articles
    Browse latest Browse all 515

    Trending Articles