Si vous avez visité mon blogs à maintes reprises ces derniers jours, vous avez du tomber sur une série de messages,du type
- Exceded CPU load
- Problème avec la base de données MYSQL
- Ce compte a été supprimé pour des raisons techniques
Phase 1) Mes premières réactions vis à vis de ces problèmes ont été d’appeler la hotline de mon hébergeur. La plupart du temps, c’était un problème de base de données du serveur et le système était réparé dans les 15 minutes.
Phase 2) La hotline m’a affirmé que j’avais un problème de base de données et qu’il fallait que je nettoie les bases de temps en temps ce qui a résulté par un billet : Réparez vos bases de données SQL (débutant)
Phase 3) Mon compte, hier, a carrément était supprimé car je sollicitais trop mon serveur et faisait planter les autres noms de domaines hébergés sur le serveur!
Panique à bord, appel à la hotline, réponse de la hotline, certaines de mes bases n’ont pas d’index! (pour moi ça ne veut rien dire, mais globalement des bases non indexées ne sont pas des bases optimisées par conséquent, il y a plus de sollicitation sur le serveur, voir des requêtes qui tournent en rond et génére des milliers de requête, puis plante le serveur)
a) un bref aperçu dans l’un de mes fichiers dans le répertoire /tmp/mysql_slow_queries et je découvre que c’est un plugin qui pose des problèmes en lisant un des fichiers.
Voilà le charabia que j’ai lu «
…LEFT JOIN wp_ak_popularity_contest…
Issu du plugin Popularity Contest (plugin qui permet de connaître quels sont les fichiers les plus lu)
b) Il a fallu ensuite aller dans la partie phpmyadmin et cliquer sur la base wp_ak_popularity_contest et constater que la base n’avait pas d’index.
c) j’ai tout de suite désactivé le plugin, supprimé la base et supprimé les codes dans ma sidebar!
Conclusions
- Avant de mettre en place un plugin, vérifier si une table est créée dans la base.
- Notez bien quelle table a été créé lors de l’activation du plugin
- Vérifier que la base est bien indexée
- Regardez vos logs /tmp/mysql_slow_queries de temps en temps pour voir justement si quelque chose cloche
- Si vous retirez le plugin définitivement, prenez soin de supprimer la table associée, car a priori, elle ne s’efface pas toute seule
- Évidemment faite une sauvegarde journalière de vos bases de données à partir de PhpMyadmin.
Remarques et conseils
- Créez vous un blog de test pour vous entrainer.
- Testez vos plugins sur ce blog de test avant de le déployer sur votre blog.
- Même si vous testez vos plugins sur un blog de test, vous ne pourrait par reproduier certains problème, du fait qu’il faut tester le plugin en charge. (votre blog de test est sensé ne pas faire de trafic, donc ne sollicité pas les bases de données de la même façon
- Même si le plugin est un plugin réputé (popularity contest en est un) méfiez vous
- Si vous avez un problème sur votre blog, essayer de reproduire le problème sur votre blog de test
- Je ne suis pas un expert du domaine, je viens juste de vous énumérer ce que j’ai fait, un expert pourra éventuellement corriger!
Je remercie à Thierry.stiegler.fr Jbonnel.over-blog.com maigretsblog.com de m’avoir prévenu par twitt et un oscar pour blogmotion.fr qui a pu me demerder sur un problème annexe ! Vraiment sympa les gars.
Rendez vous pour le prochain plantage!