Bonjour,
J'ai installé un serveur Debian auto-hébergé, ou j'ai une base de données MariaDB, dans lesquelles je modifie les données à l'aide d'un fichier php.
Les select fonctionnent bien, les insert simple aussi, mais les gros update font planter le déroulement de ma page.
Je précise que ce fichier fonctionnait sur un serveur hébergé.
Je voudrait savoir comment faire pour suivre les logs et les traces pour savoir pourquoi cela ne fonctionne pas.
Merci d'avance pour votre aide.
Christophe
# des timeouts ?
Posté par NeoX . Évalué à 5.
ca ressemble grandement à de la config PHP qui limite la durée de certaines actions
c'est des config de timeout à revoir,
ca devrait permettre de laisser le traitement se faire, et rendre la page à la fin
[^] # Re: des timeouts ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . Évalué à 4.
Je sne sais pas ce qu'est « gros update » exactement dans son cas, mais ça ressemble effectivement à un « timeout » sous réserve de vérifier que
mysql -h … -u … -p
puis lancer la requête) ; si ça ne va pas il faut revoir la gestion des erreurs dans le code PHPselect
où on va être confronté à d'autres limites en plus de faire de la charge)“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: des timeouts ?
Posté par ChriPive . Évalué à 1.
Bonjour Gil,
Merci de m'aider.
En fait cette requête fonctionnait parfaitement sur le serveur de mon hébergeur, elle ne fonctionne plus depuis que j'ai migré sur mon serveur auto-hébergé.
Je suis loin d'être un expert en linux ni en php, du coup comment savoir le temps que prend mes requêtes?
Merci d'avance.
[^] # Re: des timeouts ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . Évalué à 2.
Bonjour,
Si ça fonctionnait déjà mais que ça ne fonctionne plus c'est certainement que ce n'était pas écrit de façon portable. :-S Bon ça peut pécher à deux endroits…
Il faut que tu te connectes sur ton serveur auto-hébergé (faut que ce soit celui qui exécute le code PHP …comme ça s'il y a éventuellement des soucis de connexion on le verra) et que tu lances une console SQL
https://sysreseau.net/mysql-se-connecter-en-ligne-de-commande/
Une fois connecté, sélectionne la base de données puis exécute la requête
À la fin de chaque requête (
$query
) il te dit combien de temps il a mis à l'exécuter.Par ailleurs, sais-tu quelles sont les versions du service MySQL et de PHP, avant et après la migration ?
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: des timeouts ?
Posté par ChriPive . Évalué à 1.
Bonjour NeoX,
Merci de te pencher sur mon problème.
Je ne suis pas un pro de linux, comment je fais pour trouver la bonne information?
Merci
[^] # Re: des timeouts ?
Posté par NeoX . Évalué à 3.
à l'ancienne deja
sur l'ancien hébergement, regarde combien de temps prend le traitement de ton update (avec un chrono) entre le moment ou tu clic sur "valider/envoyer" et le moment ou la page se rafraichit
tu fais la meme chose sur le nouvel hébergement,
tu verras peut-etre ta page se bloquer, avant meme le délai mesurer avec le chrono précédemment
apres c'est empirique, comme tu ne sais pas quels étaient les reglages de ton hébergeur precedent, tu vas modifier la config de php pour doubler le timeout par defaut
si ca ne fonctionne toujours pas, tu augmentes encore (x2) et ainsi de suite
évidemment si ton timeout echoue à 1 min et que tu as mesuré 10min avec le chrono sur l'ancien hébergement, tu peux deja monter à 10min sur le nouvel hebergement
ensuite, autre piste qu'il faut voir,
si ca se trouve ton ancien hébergeur etait sur un processeur costaud, avec beaucoup de RAM
ton traitement se faisait vite
et sur ta nouvelle plateforme, le traitement est plus lent
# Configuration MariaDB/MySQL
Posté par rycks . Évalué à 2.
Hello,
pour tracer les requêtes tu peux intervenir à différents niveaux à toi de voir.
Au niveau MySQL / MariaDB tu peux activer les paramètres suivants dans le fichier de configuration :
(pense à relancer mariadb/mysql après avoir modifié ces clés de configuration). Sur ma debian le fichier est mariadb.conf.d/50-server.cnf …
tu peux aussi chercher sur le web sur "slow_query_log_file" pour tomber sur la doc officielle.
eric.linuxfr@sud-ouest.org
# Merci
Posté par ChriPive . Évalué à 1.
Merci à tous,
ça re fonctionne, je sais pas trop ce qui s'est passé.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.