7
votes

Mysql: modification dans my.cnf ne prend pas effet

J'ai mis à jour le fichier my.cnf code> de ma base de données avec la ligne suivante: max_connections = 200 code>. J'ai arrêté et j'ai commencé le service MySQL après cela afin que les changements prennent effet.

Mais pour une raison quelconque, ce changement n'affecte pas la base de données car si je cours: p>

mysql> select @@max_connections


4 commentaires

Quel système d'exploitation utilisez-vous pour héberger votre serveur MySQL?


J'utilise Linux pour mon serveur.


Peut-être que les contraintes de mémoire pourraient limiter à 100. J'ai testé la mienne à 200, mais ne pouvait atteindre que 151 de @@ max_connections. Je l'ai mis à la fois à 110 pour confirmer que la valeur était lue de my.cnf et je récupère le bon 110 de @@ max_connections.


Bien que 100 soit un nombre suspect et suspect ...


6 Réponses :


9
votes

Assurez-vous que max_connections dans la section [mysqld]:

ex: xxx


0 commentaires

7
votes

Essayez d'exécuter mysqld -verbose --Help pour voir quel fichier de configuration est réellement lu par MySQLD et quels paramètres et valeurs sont utilisés. La sortie ressemblera à ceci: xxx


1 commentaires

Je ne l'ai pas réparais, mais cela m'a aidé de toute façon. Merci!



1
votes

Cela peut avoir à voir avec «Comment» le serveur MySQL est d'être arrêté et redémarré. Sur mon système Si j'utilise le service de démon mysqld pour arrêter MySQL (E.G. SERVICE MYSQLD STOP), je reçois un avis d'arrêt, mais un message PS montre que MySQL est toujours en cours d'exécution. Utilisation d'un "service mysqld similaire", certaines des modifications apportées au fichier my.cnf sont acceptées, mais beaucoup ne le font pas.

L'autre méthode d'arrêt de MySQL est d'utiliser l'utilisateur MySQLADMIN -U -UT -PPASS. J'ai remarqué quand j'ai utilisé cette méthode, MySQL a été complètement arrêté (pas d'ovement gauche dans PS), et lorsque j'ai redémarré le serveur MySQL, toutes les modifications apportées au fichier My.cnf ont été acceptées.


0 commentaires

1
votes

Les modifications de MySQLD ne sont pas nécessairement reflétées dans le client MySQL! J'ai changé une mission de variable globale dans my.cnf, a redémarré le service et la demande dans le client MySQL. Il a renvoyé l'ancienne valeur. Lorsqu'il est interrogé d'un script, toutefois, la valeur a été modifiée!


0 commentaires

1
votes

Si MySQL démarre sous forme de service de fenêtre, vérifiez le paramètre 'chemin d'accès à exécuter' sur le service Windows. (Services -> MySQL56 -> Propriétés).

Si l'option --default-File est transmise, elle pourrait indiquer un fichier .ini complètement différent dans un endroit qui ne figure pas avec 'mysqld -verbose --help'.

Si vous supprimez l'option --Default-File à partir des paramètres de démarrage du service, il passera dans la liste des fichiers INI comme indiqué avec MySQLD --Verbose --Help.


1 commentaires

Merci! Sur mon PC, il cherchait C: \ programdata \ mysql \ mysql Server 8.0



0
votes

Mettre my.cnf dans /etc/my.cnf et redémarrer MySQL a résolu le problème pour moi. J'utilise Mac OS. La version MySQL est 5.6.41


0 commentaires