1 votes

Défaut d'ajout d'un utilisateur pour toutes les origines

Lorsque j'essaie d'ajouter un nouvel utilisateur avec

grant all privileges on retrosias.* to 'rs3'@'%' identified by 'a';

Je ne peux même pas me connecter localement :

ERROR 1045 (28000): Access denied for user 'rs3'@'localhost' (using password: YES)

Si j'ajoute le même utilisateur en utilisant

grant all privileges on retrosias.* to 'rs3'@'localhost' identified by 'a';

Je peux alors me connecter localement mais mon besoin réel est de me connecter depuis n'importe quel ordinateur.

La version de mon serveur est

Server version: 5.5.28-0ubuntu0.12.04.3 (Ubuntu)

Et j'ai vérifié que les utilisateurs ajoutés avant peuvent toujours se connecter de n'importe où (donc pas un problème de pare-feu).

Où est mon erreur ? Ou quelle pourrait être la solution de rechange ?

1voto

Daniel Points 414
mysql> select User,Host,Password from user;
+------+------------+-------------------------------------------+
| User | Host       | Password                                  |
+------+------------+-------------------------------------------+
| root | localhost  | *62395BB52702DE50773EBF629DD4AE90F07FFD94 |
| root | sgeorge-mn |                                           |
| root | 127.0.0.1  | *62395BB52702DE50773EBF629DD4AE90F07FFD94 |
| root | ::1        |                                           |
|      | localhost  |                                           |
|      | sgeorge-mn |                                           |
| suku | localhost  | *EAF5C8242B88A14545BB61062D64CA5207DD1A37 |
| rs3  | %          | *0FDB28C86F3804FCA60FA633DB4264B0EB169D9B |
| rs3  | localhost  | *667F407DE7C6AD07358FA38DAED7828A72014B4E |
+------+------------+-------------------------------------------+
9 rows in set (0.00 sec)

Il est nécessaire d'avoir à la fois (% and localhost) comptes pour rs3 pour pouvoir se connecter de n'importe où comme rs3 . Sans le compte localhost, le compte compte d'utilisateur anonyme pour localhost qui est créé par la commande mysql_install_db aurait la priorité lorsque rs3 se connecte à partir de la localhost. En conséquence, rs3 serait traité comme un utilisateur anonyme. La raison en est que le compte de l'utilisateur anonyme a un nom d'hôte plus valeur de la colonne Host plus spécifique que le compte 'rs3'@'%' compte et vient ainsi plus tôt dans l'ordre de tri de la table des utilisateurs.

A propos de l'ordre de tri :

Le serveur utilise des règles de tri qui classent en premier les rangées contenant les valeurs d'hôte les plus spécifiques. les plus spécifiques en premier. Les noms d'hôtes littéraux et les adresses IP sont les plus spécifiques. spécifiques. (La spécificité d'une adresse IP littérale n'est pas affectée par le fait que par le fait qu'elle possède ou non un masque de réseau, donc 192.168.1.13 y 192.168.1.0/255.255.255.0 sont considérées comme également spécifiques). Le modèle '%' signifie "tout hôte" et est le moins spécifique . La chaîne vide vide '' signifie également "n'importe quel hôte", mais il est trié après '%' . Les lignes ayant la même valeur d'hôte sont ordonnées en commençant par les valeurs d'utilisateur les plus spécifiques. (a blank User signifie "tout utilisateur" et est moins spécifique).

Pour plus de lecture : http://dev.mysql.com/doc/refman/5.5/en/adding-users.html

0voto

James Methley Points 41

Le redémarrage du serveur a accompli ce que ni l'un ni l'autre flush privileges ni service stop mysql / service start mysql ne l'a pas fait.

Tous les (nombreux) utilisateurs que j'ai ajoutés avant le redémarrage sont maintenant accessibles.

Et les nouveaux utilisateurs que j'ajoute maintenant avec les mêmes commandes sont également accessibles.

Je suis réticent à accepter ma réponse. Je ne sais pas si c'est un problème connu/fréquent avec mysql. Le fait que j'aie dû redémarrer non seulement le service mais aussi l'ensemble de l'ordinateur est assez troublant.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X