J'ai rencontré des problèmes d'indisponibilité à la suite de l'utilisation de la limite max_user_connections
dans MySQL. Le délai de connexion par défaut est de 8 heures, donc une fois que nous avons atteint la limite (et n'ayant pas accès pour tuer les connexions sur notre hébergement partagé), j'ai simplement dû attendre 8 heures pour les connexions à expiration.Django - SQL personnalisé dans la chaîne de connexion
Je voudrais ajouter le code suivant à ma chaîne de connexion:
SET wait_timeout=300;
Ce qui serait changer le délai d'attente à 5 minutes. Comme vous pouvez l'imaginer, je suis beaucoup plus heureux de faire face à 5 minutes d'arrêt que 8 heures. ;)
Existe-t-il un bon moyen d'ajouter SQL personnalisé à la chaîne de connexion dans django?
Si ce n'est pas le cas, il a été suggéré que nous écrivions middleware qui exécute le SQL avant le traitement de la vue.
Cela pourrait fonctionner, mais je me sentirais plus à l'aise en sachant que la requête était absolument garanti pour s'exécuter pour chaque connexion, même si plus d'une connexion est ouverte pour chaque vue.
Merci! PS: avant de me dire que je devrais juste chercher le code qui empêche les connexions d'être fermées - Ne jamais craindre! - nous faisons cela, mais je voudrais avoir cette assurance supplémentaire contre un autre bloc de 8 heures de temps d'arrêt
N'êtes-vous pas en mesure de changer la configuration mySQL? – Mez
peut-être que vous voulez dire "chaîne de requête" au lieu de "chaîne de connexion"? – nosklo