MAMP Error: checking MySQL databases failed

MAMP Error: checking MySQL databases failed

我最近将 MySQL 中 root 用户的密码重置为空值。我在 config.inc.php 文件中验证是这样的:

$cfg['Servers'][$i]['user']          = 'root';      // MySQL user
$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed
                                                    // with 'config' auth_type) 

但是,每次我重新启动 MAMP 服务器时,都会弹出此错误:

Checking the MySQL databases failed

Error message:

/Applications/MAMP/Library/bin/mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect

但是,我仍然可以通过 MySQLWorkBench 完美地连接到我的 MySQL 数据库。只是每次都会弹出这个愚蠢的错误,即使我没有设置密码。为什么这种情况不断发生?

我尝试了从重启 MAMP 到从命令行 (the solution in the MAMP docs) 重置密码的所有方法,但都无济于事。我还尝试执行以下操作:

$ /Applications/MAMP/Library/bin/mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g. 
...
mysql>

所以我可以通过终端成功连接到MySQL。这是否意味着问题出在我的 phpMyAdmin 配置中?

/Applications/MAMP/bin 中有一堆 mamp 文件具有 root 密码的硬编码值,例如 checkMysql.sh

您还需要更改这些文件。

因为您已将其重置为空字符串,所以您必须将 -proot 更改为 --password=,否则您可以使用 -pNEWPASS.

完整的文件列表是 checkMysql.shquickCheckMysqlUpgrade.shstopMysql.shupgradeMysql.sh,我可以看到。