Accès refusé pour l'utilisateur ' root@localhost '(en utilisant le mot de passe: non)
Je suis nouveau sur mysql, j'essaie D'exécuter Wordpress dans mon bureau windows et il a besoin de Mysql.
J'installe tout avec {[4] } fourni par microsoft. Je n'ai jamais défini de mot de passe root pour mysql et dans la dernière étape de l'installation de wordpressit askfor mot de passe root de mysql.
Quel est le mot de passe par défaut pour root (s'il y en a un) et comment le changer?
J'essaie
mysql -u root password '123'
Mais ça me montre
Access denied for user 'root@localhost' (using password:NO)
Après cela, j'essaie
mysql -u root -p
Mais il demande un mot de passe ce que je n'ai pas
Merci d'avance
Update: comme l'a dit Bozho, j'ai fait ce qui suit
1 - I stoped MySql Service from Windows services
2 - Open CMD
3 - change location to cd c:program filesmysqlbin
4 - write this command
mysqld --defaults-file="C:\program files\mysql\mysql server 5.1\my.ini" --init-files=C:\root.txt
5 - Command run with a warning about characterset which I mentioned below
6 - I start MySql Service from windows services
7 - in command line I write
mysql -u root -p
EnterPassword: 123 // 123 was the password
8 - the commandline shows following bug
Access denied for user 'root@localhost' (using password:**YES**)
J'attends de vos nouvelles.
12 réponses
Vous pouvez réinitialiser votre mot de passe root. Avoir à l'esprit qu'il n'est pas conseillé d'utiliser root sans mot de passe.
Pour ce genre d'erreur; il vous suffit de définir un nouveau mot de passe pour l'utilisateur root en tant qu'administrateur. suivez les étapes comme suit:
[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)
-
Arrêter le service / démon de mysql en cours d'exécution
[root ~]# service mysql stop mysql stop/waiting
-
Démarrez mysql sans aucun privilège en utilisant l'option suivante; Cette option est utilisée pour démarrer et ne pas utiliser le système de privilèges de MySQL.
[root ~]# mysqld_safe --skip-grant-tables &
À ce moment, le terminal semble arrêter. Que ce soit, et utiliser un nouveau terminal pour les prochaines étapes.
-
Entrez l'invite de commande mysql
[root ~]# mysql -u root mysql>
-
Fixer le paramètre d'autorisation de l'utilisateur root ;
mysql> use mysql; Database changed mysql> select * from user; Empty set (0.00 sec) mysql> truncate table user; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.01 sec) mysql> grant all privileges on *.* to root@localhost identified by 'YourNewPassword' with grant option; Query OK, 0 rows affected (0.01 sec)
*si vous ne voulez pas de mot de passe, ou plutôt un mot de passe vide
mysql> grant all privileges on *.* to root@localhost identified by '' with grant option;
Query OK, 0 rows affected (0.01 sec)*
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
Confirmer les résultats:
mysql> select host, user from user;
+-----------+------+
| host | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)
-
Quittez le shell et redémarrez mysql en mode normal.
mysql> quit; [root ~]# kill -KILL [PID of mysqld_safe] [root ~]# kill -KILL [PID of mysqld] [root ~]# service mysql start
-
Maintenant, vous pouvez vous connecter avec succès en tant qu'utilisateur root avec le mot de passe que vous avez défini
[root ~]# mysql -u root -pYourNewPassword mysql>
1) vous pouvez définir le mot de passe root en invoquant la console MySQL. Il est situé dans
C:\wamp\bin\mysql\mysql5.1.53\bin
par défaut.
Accédez au répertoire et tapez MySQL. puis définissez le mot de passe comme suit..
> SET PASSWORD FOR root@localhost = PASSWORD('new-password');
2) Vous pouvez configurer l'application phpmyadmin de wamp pour l'utilisateur root en modifiant
C:\wamp\apps\phpmyadmin3.3.9\config.inc.php
Cela ressemble à ceci:
$cfg['Servers'][$i]['verbose'] = 'localhost';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'YOURPASSWORD';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
L'erreur "Accès refusé pour l'utilisateur' root @ localhost '(en utilisant le mot de passe: non)"
sera résolu lorsque vous définissez $cfg['Servers'][$i]['AllowNoPassword']
à false
Note: phpmyadmin est un outil séparé qui vient avec wamp. Il fournit simplement une interface à MySQL. si vous modifiez le mot de passe de ma racine sql, vous devez modifier les configurations phpmyadmin. Généralement, phpmyadmin est configuré pour l'utilisateur root.
Je recevais la même erreur sur OS X El captain. Mysql version 5.7 . J'ai pu me connecter à mysql avec root après avoir exécuté ces étapes.
Arrêter le serveur mysql
sudo mysql.server stop
Démarrer mysql en mode sans échec
sudo mysqld_safe --skip-grant-tables
En utilisant mysqld, changez la base de données en mysql et mettez à jour les détails de l'utilisateur 'root'.
show databases;
use mysql;
UPDATE mysql.user
SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
exit;
Après cela, tuez le processus' mysqld_safe ' et démarrez mysql normalement. Vous devriez être en mesure de vous connecter à mysql en utilisant root et nouveau mot de passe. documents SQL pour plus de détails
Assurez-vous que le service MySQL est en cours d'exécution sur votre machine, puis suivez les instructions de MySQL pour la configuration initiale de root (recherchez 'windows' et cela vous mènera aux étapes de configuration de root):
Http://dev.mysql.com/doc/refman/5.1/en/default-privileges.html
Pour MySQL 5.7. Ce sont les étapes ci-dessous:
Arrêtez complètement votre serveur MySQL. Cela peut être fait en accédant à la fenêtre Services dans Windows XP et Windows Server 2003, où vous pouvez arrêter le service MySQL.
Ouvrez votre invite de commande MS-DOS en utilisant " cmd " dans la fenêtre Exécuter. À l'intérieur, accédez à votre dossier MySQL bin, tel que C:\MySQL\bin utilisation de la commande cd.
Exécutez la commande suivante dans l'invite de commande: mysqld.exe-U racine --skip-grant-tables
Laissez l'invite de commandes MS-DOS actuelle telle quelle et ouvrez une nouvelle fenêtre d'invite de commandes MS-DOS.
Accédez à votre dossier Bin MySQL, tel que C:\MySQL\bin utilisation de la commande cd.
Entrez mysql et appuyez sur Entrée.
Vous devriez maintenant avoir L'invite de commande MySQL qui fonctionne. Tapez utiliser mysql; de sorte que nous passons à la base de données" mysql".
Exécutez la commande suivante pour mettre à jour le mot de passe:
Mettre à jour le jeu d'utilisateurs authentication_string = mot de passe ('1111') où user = 'root';
Une autre solution si quelqu'un obtient l'erreur le mot de passe spécifié pour le compte d'utilisateur ‘root’ n'est pas valide, ou n'a pas réussi à se connecter au serveur de base de données également avec le bon mot de passe, est la suivante
* dans le registre Windows, supprimez la clé mysql_pwd reg sous HKCU \ Software \ Microsoft \ WebPlatformInstaller
* Désistez l'ancienne version de MySQL. net connector
* Téléchargez et installez le dernier connecteurMySql.NET .
Dans votre code remplacez le 'root' par votre serveur Nom d'utilisateur et mot de passe avec votre mot de passe du serveur. Par exemple, si vous avez DB et vos fichiers php sur le serveur http://www.example.com alors évidemment, vous devrez entrer dans ce site serveur en utilisant votre nom d'utilisateur et votre mot de passe.
Parfois, cela arrive juste en raison de l'installation de Wamp ou de la modification des options de mot de passe de l'utilisateur root. On peut utiliser privilages-->racine (utilisateur), puis définissez l'option mot de passe de N'exécuter les choses sans mot de passe OU le mot de passe et l'utiliser dans l'application.
Modifiez simplement le fichier my.ini
dans C:\xampp\mysql\bin chemin. Il suffit d'ajouter:
skip-grant-tables
Ligne entre les lignes de # The MySQL server [mysqld]
et port=3306
. Puis redémarrez le serveur MySQL.
Ressemble à:
Si vous utilisez XAMPP, allez simplement dans C:\xampp\phpMyAdmin
, puis ouvrez config.inc.php
find $cfg['Servers'][$i]['password'] = ''
line et placez votre mot de passe là-bas.
mysqladmin -u root -p password
Entrez votre current
password
Puis
Entrez votre new password