Saturation MySQL depuis mise à jour 4.2.12

Bonjour à tous,

Sur deux de mes sites, depuis la mise à jour en 4.2.12 (toujours pareil en 4.2.14), mon serveur MySQL est cela provoque logiquement des problèmes d’affichage (données non chargés) et des impossibilités d’accès au site. Ces site existaient depuis plusieurs mois sans aucun problème. Le nombre de visite n’a pas évolué. Mon hébergeur (o2Switch) a dû déplacer mon site d’un serveur mutualisé à un serveur sur lequel je dispose de ressource limitées. Ces deux sites font appels à une base supplémentaire située sur le même serveur pour afficher certaines données.

J’ai passé des heures à chercher une solution, en vain ! Avez-vous des pistes pour m’aider à diagnostiquer et identifier le problème ?

Voici le genre de message que je vois apparaître sur les pages publiques :

Warning: Constant spip_interdire_cache already defined in /home/ deju3470/sites/aaaaaa.fr/ecrire/req/mysql.php on line 1161
**Warning** : Trying to access array offset on value of type null in **/home/deju3470/sites/aaaaaa.fr/plugins/auto/lesscss/v1.4.7/lib/Less/Parser.php** on line **1931**

Voici le contenu de debusquer.log :

Erreur d’exécution squelettes/content/accueil_liste.html | File […]/ecrire/req/mysql.php Line 1054 : MySQL server has gone away
Erreur SQL 2006 - MySQL server has gone away
"Erreur d’exécution squelettes/content/commune_liste.html | File […]/ecrire/req/mysql.php Line 276 : mysqli_query(): Argument #1 ($mysql) must be of type mysqli, null given"

Quant au contenu de mysql.log :

Echec connexion serveur mysql : host[localhost] port[] login[aaaaafr_opend] base[deju3470_aaaaa-opendata]
Echec mysqli_connect. Erreur : Too many connections

Merci d’avance !

Julien

Il faudrait demander à ton hébergeur plus d’infos, comme les requêtes SQL qui génèrent le dépassement de ressource, la liste des users agents qui visitent le site pendant cette période, etc. C’est peut-être tout simplement un bot qui crawl agressivement ton site et si celui-ci n’est pas détecté par l’écran de sécurité il n’est pas bloqué (ou alors l’écran n’a pas accès à la valeur de load de la machine).

Merci.

J’avais déjà échangé avec mon hébergeur qui considérait que c’est la mise à jour de mon CMS 4.2.12 qui était à l’origine de cette saturation.

Tous les logs d’accès sur une semaine ne montrent aucun problème particulier :

  • consommation de bande passant très régulière
  • pas d’adresse IP omniprésente
  • un nombre de pages consultées normal par IP
  • des User-Agent tout à fait normaux aussi

Je continue à avoir en permanence des erreurs MySQL dans le log debusquer.log de SPIP et j’ai des erreurs sur la page publique.

Il n’existe aucun plugin ou log spécifique sur SPIP qui me permette de diagnostiquer ce problème et d’avoir une trace des requêtes SQL ?

Merci d’avance.

Tu as bien activé les logs verbeux cf les trois derniers items de Les aides au débuggage de squelettes - SPIP ?