Introduction

Certains serveurs configurés ont soit de très grandes tables et nécessitent un espace temporaire plus important, soit il n'y a pas assez de mémoire et l'utilisation du swap utilise plus d'espace temporaire.
Cela peut parfois être atténué en déplaçant le tmpdir MySQL de /tmp vers une partition plus grande telle que /home.

 

Procedure

Si le serveur cPanel utilise MariaDB comme serveur MySQL, procédez comme suit en premier.

 

Créez le fichier /etc/systemd/system/mariadb.service.d/override.conf et ajoutez le contenu suivant.

[Service]
ProtectHome=false

 

Puis exécutez les commandes suivantes

systemctl daemon-reload
/scripts/restartsrv_mysql

 

Si vous utilisez les RPM MySQL et non MariaDB, commencez à partir d'ici. Si vous utilisez MariaDB, continuez avec les modifications suivantes après avoir désactivé ProtectHome.

 

Voici les étapes nécessaires pour déplacer le répertoire tmp du serveur MySQL vers /home :

mkdir /home/mysqltmp
chown mysql:mysql /home/mysqltmp

 

Ensuite, mettez ce qui suit dans /etc/my.cnf sous [mysqld]

tmpdir=/home/mysqltmp

 

Puis redémarrez MySQL.


/scripts/restartsrv_mysql


Vérifiez en exécutant cette commande

mysqladmin variables|grep tmpdir


Vous devriez voir ce type de retour

vps root # mysqladmin variables|grep tmpdir
| slave_load_tmpdir                      | /home/mysqltmp                                                                            |
| tmpdir                                  | /home/mysqltmp                                                                            |
vps root #