Le résultat suivant de la CURRENT_USER()
mysql> SELECT CURRENT_USER();
+----------------+
| CURRENT_USER() |
+----------------+
| @localhost |
+----------------+
1 row in set (0.00 sec)
dit que vous êtes qui utilise actuellement la base de données en tant que utilisateur anonyme . Une base de données MySQL fraîchement installée contient les entrées utilisateur suivantes dans sa table mysql.user :
mysql> SELECT user,host,password from mysql.user;
+------------------+-----------------+-------------------------------------------+
| user | host | password |
+------------------+-----------------+-------------------------------------------+
| root | localhost | *........................................ |
| root | xxxx | *........................................ |
| root | 127.0.0.1 | *........................................ |
| root | ::1 | *........................................ |
| | localhost | |
| | xxxxx | |
| debian-sys-maint | localhost | *........................................ |
+------------------+-----------------+-------------------------------------------+
7 rows in set (0.00 sec)
Il existe des comptes root (sécurisés par un mot de passe) et deux comptes anonymes permettant une connexion à partir de localhost (l'entrée xxxxx est le nom d'hôte de la machine).
S'il y a une entrée dans la table des utilisateurs sans nom d'utilisateur ni mot de passe, la règle suivante s'applique :
Si la valeur Utilisateur est vide, elle correspond à n'importe quel nom d'utilisateur. Si l'utilisateur qui correspond à une connexion entrante a un nom d'utilisateur vide, l'utilisateur est considéré comme un utilisateur anonyme sans nom, et non comme un avec le nom spécifié par le client. Cela signifie que un nom d'utilisateur vierge est utilisé pour tous les contrôles d'accès ultérieurs pendant la durée de la connexion (c'est-à-dire pendant la phase 2). pendant la durée de la connexion (c'est-à-dire pendant la phase 2).
(voir le MySQL docs, "6.2.4. Contrôle d'accès, étape 1 : vérification de la connexion" )
En général, après avoir installé MySQL, vous devriez prendre connaissance de la partie suivante de la documentation : " 2.11.2. Sécurisation des comptes MySQL initiaux ".