Comment MySQL gère la mémoire <<< |
Comment MySQL utilise le DNS | Syntaxe de SET >>> |
5.5 Optimisation du serveur MySQL 5 Optimisation de MySQL Manuel de Référence MySQL 4.1 : Version Française . Réglage du système, au moment de la compilation, et paramètres du démarrage . Réglage des paramètres du serveur . Influences de la compilation et des liaisons sur la vitesse de MySQL . Comment MySQL gère la mémoire ->Comment MySQL utilise le DNS . Syntaxe de SET |
5.5.5 Comment MySQL utilise le DNS
Quand un nouveau thread se connecte à mysqld , mysqld crée nouveau thread pour traiter la requête. Ce thread contrôle d'abord si le nom de l'hôte est dans le cache des noms d'hôte. Si ce n'est pas le cas, le thread va appeler gethostbyaddr_r() et gethostbyname_r() pour résoudre le nom de l'hôte. Si le système d'exploitation ne supporte pas les appels précédents, le thread va verrouiller un "mutex" et appeler gethostbyaddr() et gethostbyname() à la place. Sachez que dans ce cas, aucun autre thread ne peut résoudre de nom d'hôte qui n'est pas dans le cache tant que le premier thread n'a pas fini. Il est possible de désactiver la recherche du nom par DNS en démarrant mysqld avec l'option --skip-name-resolve . Dans ce cas, il est toujours possible d'utiliser les adresses IP dans les tables de privilèges de MySQL.Si votre service DNS est très lent et que vous avez beaucoup d'hôtes, vous pouvez améliorer les performances soit en désactivant le DNS avec --skip-name-resolve , soit en augmentant la taille de HOST_CACHE_SIZE (par défaut: 128) et en recompilant mysqld . Il est possible de désactiver le cache de noms d'hôte avec --skip-host-cache . Il est possible de vider le cache des noms d'hôtes avec FLUSH HOSTS ou avec mysqladmin flush-hosts .Si vous ne voulez pas autoriser les connections par TCP/IP , vous pouvez utiliser l'option --skip-networking au démarrage de mysqld . |
<< | Comment MySQL utilise le DNS | >> |
Comment MySQL gère la mémoire | Optimisation du serveur MySQL | Syntaxe de SET |