Maison >base de données >tutoriel mysql >Pourquoi MySQL traite-t-il « localhost » différemment de « 127.0.0.1 » ?

Pourquoi MySQL traite-t-il « localhost » différemment de « 127.0.0.1 » ?

DDD
DDDoriginal
2024-11-25 02:47:10825parcourir

Why Does MySQL Treat `localhost` Differently Than `127.0.0.1`?

MySQL localhost != 127.0.0.1?

Cette différence est due à l'utilisation du socket MySQL lorsqu'il est invoqué sans nom d'hôte ou avec le 'localhost ' nom d'hôte. Comme démontré ci-dessous, l'utilisation de MySQL avec le nom d'hôte « 127.0.0.1 » se connecte via des sockets TCP/IP :

$ mysql -u root -h 127.0.0.1 -e 'show tables' created_from_host;
+-----------------------------+
| Tables_in_created_from_host |
+-----------------------------+
| test                        |
+-----------------------------+

Cependant, l'utilisation de « localhost » se connecte via des sockets UNIX, ce qui entraîne l'erreur suivante :

$ mysql -u root -h localhost -e 'show tables' created_from_host;
ERROR 1049 (42000): Unknown database 'created_from_host'

Comment accorder TOUS les privilèges sur TOUTES les bases de données de TOUS les hôtes pour root ?

Pour accorder des privilèges illimités à l'utilisateur « root », exécutez l'instruction SQL suivante :

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

Considérations supplémentaires :

  • Variable skip_networking : Assurez-vous que cette variable est définie sur « OFF » pour activer Connexions TCP/IP.
  • Table 'user' : Vérifiez la table 'mysql.user' pour vérifier que l'utilisateur 'root' dispose d'enregistrements d'hôte pour 'localhost' et '127.0. 0,1'.

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