17.07.2015 Views

Audit et optimisation MySQL 5 Bonnes pratiques pour l ... - Éditions VM

Audit et optimisation MySQL 5 Bonnes pratiques pour l ... - Éditions VM

Audit et optimisation MySQL 5 Bonnes pratiques pour l ... - Éditions VM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Gérer une situation d’urgence avec <strong>MySQL</strong>CHAPITRE 19minée l’heure probable de l’origine du problème, comparez celle-ci avec cellesprésentées par l’ordonnanceur.Figure 1–1Posséder un historique surl’activité des bases est d’unegrande utilité, exemple avec<strong>MySQL</strong> Enterprise Manager.Tranche de vie d’une campagne mark<strong>et</strong>ing improviséeVotre système de surveillance est en alerte, les diodes rouges remplacent frénétiquementleurs paisibles ancêtres de couleur verte bien plus rassurant. Pourquoi ? Lestâches programmées ne sont pas incriminées : les crontab ont été passées au peignefin. Les développeurs vous jurent qu’ils n’y sont <strong>pour</strong> rien. Finalement, une fois latempête passée, quelqu’un a déclenché le lancement d’une campagne mark<strong>et</strong>ingreposant sur des pop-ups dynamiques aux requêtes non optimisées. Outre le problèmede communication entre les départements technique <strong>et</strong> mark<strong>et</strong>ing, l’incidentrévèle qu’un seul <strong>et</strong> même utilisateur peut à lui seul occuper 100 % des connexionsdisponibles sur votre serveur <strong>MySQL</strong>.Afin d’empêcher qu’un seul utilisateur consomme toutes les ressources, il est possibled’ajouter certaines restrictions par heure à c<strong>et</strong> utilisateur. Ainsi, le nombre de requêtes,de mises à jour ou de connexions, sont des limites qu’on peut fixer. De plus, lenombre maximal de connexions simultanées <strong>pour</strong> un utilisateur est lui aussi configurable.Restriction à 200 connexions simultanées maximum <strong>pour</strong> un utilisateur existant :mysql> GRANT USAGE ON *.* TO 'user_pub'@'192.168.200.20'with MAX_USER_CONNECTIONS 200;mysql> SHOW GRANTS FOR 'user_pub'@'192.168.200.20';Grants for user_pub@192.168.200.20: GRANT SELECT ON *.* TO'user_pub'@'192.168.200.20' IDENTIFIED BY PASSWORD'*1270C0C06DEE42FD1618BB99005ADCA2EC9D1E19'WITH MAX_USER_CONNECTIONS 200Une augmentation brutale du nombre de requêtes peut provenir d’un problème ducache : soit celui-ci a été brutalement désactivé ou invalidé (query cache) soit votresystème basé sur memcached est défectueux.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!