gpt4 book ai didi

mysql - 如何在 MacOS 中恢复 mysql root 密码

转载 作者:行者123 更新时间:2023-11-29 15:56:18 27 4
gpt4 key购买 nike

我启动我的MAMP并尝试通过localhost127.0.0.1连接到我的MySQL服务器,我尝试了所有可能的密码,我认为它是正确的,但是由于某些原因它仍然不喜欢它,所以我想我不知何故忘记了它。我需要帮助。

<小时/>

尝试#1

输入所有可能的密码

MySQL -u root -h localhost -p

输入密码:<---我已经尝试了近 10 个可能的密码

我得到

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

<小时/>

尝试#2

输入可能的密码

MySQL -u root -h localhost

我得到

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)


尝试#3

MySQL.server 停止

我得到

ERROR! MySQL server PID file could not be found!

我正在尝试运行这个

mysqld_safe --skip-grant-tables &

我得到

<小时/>

尝试#4

mysqld_safe --skip-grant-tables &

我得到

[1] 72194
🌈 ~ 2017-10-04T12:13:42.6NZ mysqld_safe Logging to '/usr/local/var/mysql/BH-MacBook-Pro-15-512GB.local.err'.
2017-10-04T12:13:42.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
2017-10-04T12:13:44.6NZ mysqld_safe mysqld from pid file /usr/local/var/mysql/BH-MacBook-Pro-15-512GB.local.pid ended

打开一个新标签

MySQL -u root

我还是明白了

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

<小时/>

尝试#5

关闭我的 MAMP 应用程序,然后运行此

mysqld_safe --skip-grant-tables &

我得到

[1] 72194
🌈 ~ 2017-10-04T12:13:42.6NZ mysqld_safe Logging to '/usr/local/var/mysql/BH-MacBook-Pro-15-512GB.local.err'.
2017-10-04T12:13:42.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
2017-10-04T12:13:44.6NZ mysqld_safe mysqld from pid file /usr/local/var/mysql/BH-MacBook-Pro-15-512GB.local.pid ended

打开一个新标签

MySQL -u root

我还是明白了

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

<小时/>

我不知道还能再尝试什么了。

我无法真正设置 root 密码,因为我什至无法进入。

<小时/>

这是我的MySQL的进程

ps aux | grep MySQL

bheng            95850   0.2  1.0  2869440 175404   ??  S     8:48AM   0:00.28 /usr/local/opt/mysql/bin/mysqld --basedir=/usr/local/opt/mysql --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/opt/mysql/lib/plugin --bind-address=127.0.0.1 --log-error=/usr/local/var/mysql/bh-mbp-15-512gb.ad.benu.net.err --pid-file=/usr/local/var/mysql/bh-mbp-15-512gb.ad.benu.net.pid
_mysql 124 0.0 0.0 2864848 4040 ?? Ss 22Sep17 0:32.26 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid --keyring-file-data=/usr/local/mysql/keyring/keyring --early-plugin-load=keyring_file=keyring_file.so
bheng 95863 0.0 0.0 2423384 396 s009 R+ 8:48AM 0:00.00 grep mysql
bheng 95749 0.0 0.0 2448756 2496 ?? S 8:48AM 0:00.03 /bin/sh /usr/local/opt/mysql/bin/mysqld_safe --bind-address=127.0.0.1 --datadir=/usr/local/var/mysql
bheng 66379 0.0 0.1 2696936 9304 ?? S 8:06AM 0:00.51 /Applications/MAMP/Library/bin/mysqld --basedir=/Applications/MAMP/Library --datadir=/Applications/MAMP/db/mysql --plugin-dir=/Applications/MAMP/Library/lib/plugin --log-error=/Applications/MAMP/logs/mysql_error_log.err --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --socket=/Applications/MAMP/tmpmysql/mysql.sock --port=8889
bheng 66263 0.0 0.0 2446708 2100 ?? S 8:06AM 0:00.02 /bin/sh /Applications/MAMP/Library/bin/mysqld_safe --port=8889 --socket=/Applications/MAMP/tmp/mysql/mysql.sock --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --log-error=/Applications/MAMP/logs/mysql_error_log

🌈~

最佳答案

这就是您在 macOS Sierra 中执行此操作的方法,可能您通过 pkg 安装它在系统首选项中有一个 MySQL 图标,如下所示:

enter image description here

如果已启动并正在运行,请打开终端并运行此命令:

pgrep -fl mysql

这将帮助您找到 mysqld 的路径以及当前用于启动服务器的命令,输出可能如下所示:

6283 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid

下一步是停止 MySQL,您可以通过单击“系统偏好设置”菜单并单击“停止 MySQL 服务器”按钮来完成此操作,一旦在终端中停止,您将需要再次启动服务器,但有一些额外的选项,如下所示:

sudo /usr/local/mysql/bin/mysqld \
--skip-grant-tables \
--skip-networking \
--user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid

这确实是与 pgrep -fl mysql 的输出相同的命令,但在这种情况下,您只需要添加:

--skip-grant-tables --skip-networking

完成此操作后,您会注意到系统偏好设置中的菜单再次变为绿色,MySQL 应该已启动并正在运行,现在您可以尝试登录并更改密码:

mysql -uroot
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR root@'localhost' = PASSWORD('secret');
mysql> FLUSH PRIVILEGES;
mysql> exit

从“系统偏好设置”面板停止并重新启动 MySQL,它现在应该可以使用新密码运行。

关于mysql - 如何在 MacOS 中恢复 mysql root 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56440204/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com