Arrêt fréquent du service mysql [Résolu]

Mon serveur YunoHost

Matériel: VPS acheté en ligne chez ECOWAN
Version de YunoHost: 11.2.3
J’ai accès à mon serveur : En SSH | Par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non
Si oui, expliquer:

Description du problème

Bonjour, sur mon serveur, le service mysql s’arrête très régulièrement. Lorsqu’il est arrêté, mes applications ne sont plus accessibles, normal, mais dès qu’il est de nouveau en marche, tout rentre dans l’ordre.

Voici les logs pour le service.
Log

Je ne sais pas pourquoi il s’arrête, la RAM du serveur a l’air d’être suffisante.

Pour contourner le problème, j’ai voulu utiliser la solution du redémarrage automatique donné sur le forum https://forum.yunohost.org/t/mysql-qui-plante-regulierement/8924/10

Le résultat n’est pas concluant. La solution datant de 2019, je suppose que les choses ont évolué.

Merci pour votre aide

Dans le log partagé, il y a…

août 22 07:16:49 systemd[1]: mariadb.service: Failed with result 'oom-kill'.

… ce qui veut bien dire Out Of Memory - Kill, et donc il y a quelque chose (une tâche cron, une requête mal optimisée, …) qui fait que le processus de mariadb/mysql est arrêter par le noyau linux parce qu’il estime que c’est ce processus qui consomme trop de mémoire.

Est-ce que ton serveur dispose d’une mémoire d’échange (swap file) ?

Si non, peut-être qu’en créant un fichier swap (pas plus gros que la quantité de ram existante dans un premier temps) et en l’utilisant, ça pourrait suffire.

Si non, il faudrait chercher ce qui déclenche une requête SQL qui fait que le serveur mariadb consomme tout ce qu’il peut au point de se faire couper la chique par le kernel.

1 Like

Merci pour la réponse.
Je ne pense pas qu’il y ait de fichier swap. Je vais voir cela avec mon fournisseur de vps.
Est-ce qu’il y a un moyen pour savoir quelle action demande trop de mémoire (2G) ?

Pour créer un fichier swap, voici un exemple en anglais.

En gros ça revient à créer un fichier de 1 ou 2 GB, de l’utiliser, et de modifier le fichier /etc/fstab pour que cela soit pris en compte à chaque redémarrage du serveur.

Savoir quelle action déclenche une utilisation excessive de la ram par mariadb, c’est plus compliqué et je n’ai pas de truc simple à proposer.

Peut-être voir si cela arrive au même moment dans la journée, ce qui suggérerait qu’une tâche cron se déclenchant à heure fixe en serait le déclencheur.

1 Like

J’ai suivi le tuto. En principe si demain tout fonctionne normalement, c’est que cela a fonctionné.

Merci.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.