Je viens d'installer MySQL sur Mac OS X. L'étape suivante consistait à définir le mot de passe de l'utilisateur root, alors je l'ai fait ensuite:
- Lancez l'application de terminal pour accéder à la ligne de commande Unix.
Sous l'invite Unix, j'ai exécuté ces commandes:
$ cd /usr/local/mysql/bin $ ./mysqladmin -u root password 'password'
Mais, quand j'exécute la commande
$ ./mysql -u root
, voici la réponse:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 224
Server version: 5.5.13 MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Je peux entrer dans le mysql
ligne de commande sans mot de passe!
Pourquoi est-ce?
UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root';
place.'password'
côté droit de l'égalitéERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Si vous ne vous souvenez pas du mot de passe que vous avez défini pour root et devez le réinitialiser, procédez comme suit:
sudo mysqld_safe --skip-grant-tables;
mysql -u root
Pour MySQL plus ancien que MySQL 5.7, utilisez:
UPDATE mysql.user SET Password=PASSWORD('your-password') WHERE User='root';
Pour MySQL 5.7+, utilisez:
USE mysql;
UPDATE mysql.user SET authentication_string=PASSWORD("your-password") WHERE User='root';
Actualisez et quittez:
FLUSH PRIVILEGES;
\q
la source
password
besoin d'êtreauthentication_string
maintenant.UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE User='root';
, tout comme @Scott l'a dit.sudo kill
N'a pas fonctionner comme le Mac OSx relancerait automatiquement un nouveau msql instantanément. Une fois que j'aurais arrêté mysql en utilisant le volet des préférences, je pourrais exécuter manuellementmysqld_safe --skip-grant-tables
Une fois que vous avez installé MySQL, vous devrez établir le mot de passe "root". Si vous n'établissez pas de mot de passe root, alors, il n'y a pas de mot de passe root et vous n'avez pas besoin d'un mot de passe pour vous connecter.
Donc, cela étant dit, vous devez établir un mot de passe root.
À l'aide du terminal, entrez les informations suivantes:
Installation: définissez le mot de passe de l'utilisateur root:
Si vous avez fait une erreur ou devez changer le mot de passe root, utilisez ce qui suit:
Changer le mot de passe root:
la source
update user set authentication_string=PASSWORD("NEW_PASSWORD_HERE") where User='root';
au lieu d'utiliserset password=...
Les instructions fournies sur le site mysql sont si claires que celles mentionnées ci-dessus
$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start --skip-grant-tables
/usr/local/mysql/bin/mysql
exit
ou Ctrl + z$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/support-files/mysql -u root -p
Référence: http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
la source
Arrêtez le serveur mysqld.
System Preferences
>MySQL
>Stop MySQL Server
sudo systemctl stop mysqld.service
Démarrez le serveur en mode sans échec avec contournement de privilèges
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
Dans une nouvelle fenêtre de terminal:
sudo /usr/local/mysql/bin/mysql -u root
Cela ouvrira la ligne de commande mysql. De là, entrez:
UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';
FLUSH PRIVILEGES;
quit
Arrêtez à nouveau le serveur mysqld et redémarrez-le en mode normal.
sudo /usr/local/mysql/support-files/mysql.server restart
sudo systemctl restart mysqld
la source
Pour le nouveau Mysql 5.7 pour une raison quelconque, les commandes bin de Mysql ne sont pas attachées au shell:
Redémarrez le Mac après l'installation.
Démarrez Mysql:
Préférences système> Mysql> bouton Démarrer
Accédez au dossier d'installation de Mysql dans le terminal:
$ cd /usr/local/mysql/bin/
Accès à Mysql:
$ ./mysql -u root -p
et entrez le mot de passe initial donné à l'installation.
Dans le terminal Mysql, changez le mot de passe:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
la source
Dans le terminal, écrivez
mysql -u root -p
et appuyez sur Retour. Entrez le mot de passe mysql actuel que vous devez avoir noté. Et définissez le mot de passeSET PASSWORD = PASSWORD('new_password');
Veuillez consulter cette documentation ici pour plus de détails.
la source
Si vous avez oublié le mot de passe root de MySQL, vous ne vous en souvenez pas ou vous voulez vous effondrer… .. vous pouvez réinitialiser le mot de passe de la base de données mysql à partir de la ligne de commande sous Linux ou OS X tant que vous connaissez le mot de passe utilisateur root de la boîte tu es sur:
(1) Arrêtez MySQL
(2) Démarrez-le en mode sans échec:
(3) Ce sera une commande en cours jusqu'à la fin du processus, alors ouvrez une autre fenêtre shell / terminal , connectez-vous sans mot de passe:
Dans la commande UPDATE ci-dessus, remplacez simplement le 'mot de passe' par votre propre nouveau mot de passe, assurez-vous de conserver les guillemets
(4) Économisez et tout à fait
(5) Démarrez MySQL
la source
Lorsque j'ai installé OS X Yosemite, j'ai eu un problème avec Mysql. J'ai essayé beaucoup de méthodes mais aucune n'a fonctionné. J'ai trouvé un moyen assez simple. Essayez ceci.
sudo su
sudo /usr/local/mysql/support-files/mysql.server stop
sudo mysqld_safe --skip-grant-tables
mysql -u root
UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;
la source
Les méthodes mentionnées dans les réponses existantes ne fonctionnent pas pour mysql 5.7.6 ou version ultérieure. Selon la documentation mysql, c'est la méthode recommandée.
B.5.3.2.3 Réinitialisation du mot de passe root: instructions génériques
MySQL 5.7.6 et versions ultérieures:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Référence: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
la source
Si vous ne vous souvenez pas de votre mot de passe, la réponse de @ radtek a fonctionné pour moi, sauf que dans mon cas, j'avais configuré MySQL en utilisant brew, ce qui signifiait que les étapes 1 et 2 de sa réponse devaient être changées en:
/usr/local/bin/mysql.server stop
/usr/local/bin/mysqld_safe --skip-grant-tables
Remarque: le manque de
sudo
.la source
Je pense que cela devrait fonctionner:
(Notez que vous devriez probablement remplacer root par votre nom d'utilisateur s'il n'est pas root)
la source
Arrêt du serveur MySQL
sudo /usr/local/mysql/support-files/mysql.server stop
Démarrer MySQL en mode sans échec
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
Changer le mot de passe root
/usr/local/mysql/bin/mysql -u root
Essai
Courir
/usr/local/mysql/bin/mysql -u root
Saisissez maintenant le nouveau mot de passe pour commencer à utiliser MySQL.
la source
C'est exactement ce qui a fonctionné pour moi:
Assurez-vous qu'aucun autre processus MySQL n'est en cours d'exécution. Pour le vérifier, procédez comme suit:
Démarrez MySQL avec la commande:
Le mot de passe de chaque utilisateur est stocké dans la table mysql.user sous les colonnes User et authentication_string respectivement. Nous pouvons mettre à jour le tableau comme:
la source
macOS 10.14+ avec 5.7.26 installé à partir du programme d'installation de Mac OSX DMG.
Lorsque vous essayez d'utiliser la commande UPDATE publiée par d'autres utilisateurs, l'erreur suivante se produit:
ERREUR 1820 (HY000): Vous devez réinitialiser votre mot de passe à l'aide de l'instruction ALTER USER avant d'exécuter cette instruction.
Copiez le mot de passe qui vous a été présenté par le terminal ouvert du programme d'installation et procédez comme suit:
la source
Essayez ceci dans le terminal:
/usr/local/bin/mysql_secure_installation
la source
Pour référencer MySQL 8.0.15 +, la fonction password () n'est pas disponible. Utilisez la commande ci-dessous.
Veuillez utiliser
la source
Si vous avez oublié votre mot de passe ou si vous souhaitez le changer pour votre mysql:
où "new_password" - votre nouveau pass. Vous n'avez pas besoin d'un ancien pass pour mysql.
la source
Beaucoup de choses ont changé pour MySQL 8. J'ai trouvé la modification suivante de la documentation MySQL 8.0 "Comment réinitialiser le mot de passe root" fonctionne avec Mac OS X.
Créez un fichier temporaire
$HOME/mysql.root.txt
avec le SQL pour mettre à jour le mot de passe root:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<new-password>';
Cela permet
mysql_native_password
d'éviter le plug-in d'authentification 'caching_sha2_password' ne peut pas être chargé d' erreur, ce que j'obtiens si j'omet l'option.Arrêtez le serveur, commencez par une
--init-file
option pour définir le mot de passe root, puis redémarrez le serveur:mysql.server stop mysql.server start --init-file=$HOME/mysql.root.txt mysql.server stop mysql.server start
la source
Ajoutons cette solution de contournement qui fonctionne sur mon ordinateur portable!
Mac avec Osx Mojave 10.14.5
Mysql 8.0.17 a été installé avec homebrew
J'exécute la commande suivante pour localiser le chemin de mysql
brew info mysql
Une fois le chemin connu, je lance ceci:
/usr/local/Cellar/mysql/8.0.17/bin/mysqld_safe --skip-grant-table
Dans un autre terminal, je lance:
mysql -u root
À l'intérieur de ce terminal, j'ai changé le mot de passe root en utilisant:
update mysql.user set authentication_string='NewPassword' where user='root';
et pour finir je cours:
FLUSH PRIVILEGES;
Et voila le mot de passe a été réinitialisé.
Références :
la source
Vous pouvez désactiver manuellement mysql sur Mac, en cliquant sur le menu Apple et ouvrez les Préférences Système. Choisissez le panneau de préférences «MySQL», puis cliquez sur le bouton «Arrêter le serveur MySQL» pour arrêter MySQL Server sur Mac.
Après avoir arrêté votre mysql, vous devrez suivre ces étapes.
Ensuite, vous pouvez aller dans le menu Apple et ouvrir les Préférences Système. Choisissez le panneau de préférences «MySQL», puis cliquez sur le bouton «Arrêter le serveur MySQL» pour arrêter MySQL Server sur Mac.
Enfin, vous pouvez à nouveau accéder au menu Apple et ouvrir les Préférences Système. Choisissez le panneau de préférences «MySQL», puis cliquez sur le bouton «Démarrer MySQL Server» pour démarrer MySQL Server sur Mac.
J'espère que cela pourra aider
la source
Aucun des commentaires précédents ne résout le problème sur mon Mac. J'ai utilisé les commandes ci-dessous et cela a fonctionné.
la source
Je dois en quelque sorte le faire à chaque redémarrage de mon Macbook. En le publiant à titre de référence personnelle, j'espère que cela aidera aussi quelqu'un d'autre.
la source