Vous ne devriez pas pinger MySQL avant une requête pour trois raisons :
- Ce n'est pas un moyen fiable de vérifier que le serveur sera opérationnel lorsque vous tenterez d'exécuter votre requête, il pourrait très bien s'arrêter entre la réponse du ping et la requête.
- Votre requête peut échouer même si le serveur est opérationnel.
- À mesure que le volume de trafic vers votre site Web augmente, vous ajouterez beaucoup de frais supplémentaires à la base de données. Il n'est pas rare que les applications d'entreprise qui utilisent cette méthode voient une énorme quantité de ressources de la base de données gaspillée en pings.
La meilleure façon de gérer les connexions à la base de données est la gestion des erreurs (try/catch), les tentatives et les transactions.
Plus d'informations à ce sujet sur le blog des performances de MySQL :Vérification d'une connexion à la base de données en direct considérée comme nuisible
Dans cet article de blog, vous verrez que 73 % de la charge sur cette instance de MySQL a été causée par des applications vérifiant si la base de données était en place.