Maison  >  Article  >  base de données  >  Comment utiliser le paramètre de configuration max_connections pour effectuer une optimisation des performances sur Mysql

Comment utiliser le paramètre de configuration max_connections pour effectuer une optimisation des performances sur Mysql

伊谢尔伦
伊谢尔伦original
2017-05-30 14:48:371717parcourir

Le paramètre max_connections de MySQL est utilisé pour définir le nombre maximum de connexions (utilisateurs). Chaque utilisateur se connectant à MySQL compte pour une connexion et la valeur par défaut de max_connections est 100. Cet article expliquera le rôle détaillé et l’impact sur les performances de ce paramètre.

Fonctionnalités liées à max_connections

MySQL conservera une connexion pour la connexion administrateur (SUPER) quoi qu'il arrive, pour que l'administrateur se connecte à la base de données Maintenance. opération, même si le nombre actuel de connexions a atteint max_connections. Par conséquent, le nombre maximum réel de connexions pouvant être établies dans MySQL est max_connections+1 ;
La valeur maximale réelle de ce paramètre (le nombre maximum réel de connexions) est de 16 384, c'est-à-dire que la valeur maximale de ce paramètre ne peut pas être établie. dépasser 16384, et même s'il dépasse, 16384 prévaudra ;
Augmenter la valeur du paramètre max_connections n'occupera pas trop de ressources système. L'occupation des ressources système (CPU, mémoire) dépend principalement de la densité et de l'efficacité de la requête
Le symptôme le plus évident d'un paramètre trop petit est l'erreur « Trop de connexions »

Voyons d'abord comment vérifier la valeur actuelle de max_connections de mysql :

Le sql suivant

show variables like "max_connections";
affiche le résultat dans le format suivant :

+----- ------------+-------+

| Nom_variable |
+--------- -------- +-------+
| max_connexions 100 |
+------------------+-- -----+

La valeur de max_connections peut être définie sur 200 via l'instruction SQL suivante. Bien sûr, le principe est que l'utilisateur actuellement connecté dispose des autorisations suffisantes :

set. global max_connections = 200;

Ce paramètre prendra effet immédiatement, mais ce paramètre deviendra invalide au redémarrage de MySQL. Une meilleure façon est de modifier le fichier de configuration ini de MySQL my.ini

en. trouvez le bloc mysqld, modifiez ou ajoutez les paramètres suivants :

max_connections=200

Après cette modification, même si mysql est redémarré, cette configuration sera chargée par défaut

Cependant, par souci de sécurité, il est recommandé de le modifier directement dans my.ini. Y a-t-il quelque chose que vous puissiez ajouter ?

Ajuster la valeur du paramètre max_connections

Il existe plusieurs façons d'ajuster ce paramètre, soit lors de la compilation, soit dans le fichier de configuration MySQL. Les paramètres my.cnf peuvent également être ajusté directement à l’aide des commandes et prend effet immédiatement.

1. Définissez le nombre maximum de connexions par défaut lors de la compilation

Ouvrez le code source de MySQL, entrez dans le répertoire sql et modifiez le fichier mysqld.cc :

{"max_connections", OPT_MAX_CONNECTIONS,
"The number of simultaneous clients allowed.", (gptr*) &max_connections,
(gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 100, 1, 16384, 0, 1,0},
Le "100" rouge est la valeur par défaut de ce paramètre. Modifiez-le à la valeur souhaitée, enregistrez et quittez. Exécutez ensuite

./configure;make;make install
pour recompiler et installer MySQL ; notez que puisque le code source de MySQL est compilé, installé et modifié, il est préférable d'effectuer cette opération avant d'installer MySQL ; . Dans la configuration Définissez la valeur de max_connections dans le fichier my.cnf

Ouvrez le fichier de configuration MySQL my.cnf

Recherchez la ligne max_connections et modifiez-la en (. sinon, ajoutez-le vous-même),

[root@www ~]# vi /etc/my.cnf
Le 1000 ci-dessus est la valeur de ce paramètre.

max_connections = 1000
3. Modifiez la valeur de ce paramètre en temps réel (temporairement)

Connectez-vous d'abord à mysql et exécutez la commande suivante :

Entrez ensuite le mot de passe MySQL Root.

Afficher la valeur actuelle du paramètre Max_connections :
[root@www ~]# mysql -uroot -p

Définir la valeur de ce paramètre :

mysql> SELECT @@MAX_CONNECTIONS AS 'Max Connections';

(notez le cas du commande ci-dessus)

mysql> set GLOBAL max_connections=1000;
La modification prendra effet en temps réel sans redémarrer MySQL.


De manière générale, si les ressources du serveur sont suffisantes, ce paramètre doit être défini le plus grand possible pour répondre aux besoins de plusieurs clients se connectant en même temps. Sinon, une erreur similaire à « Trop de connexions » se produira.

Généralement, un nombre plus complet est défini en fonction du nombre de personnes en ligne en même temps.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn