Mysql:在macOS上安装后,用户'root'@'localhost'的访问被拒绝

时间:2018-04-20 14:20:38

标签: mysql macos macos-high-sierra

我刚从MySQL网站下载的dmg包中的macOS High Sierra v10.13.4上安装了MySQL v8.0.11。安装期间安装程序未要求任何权限或访问设置。 安装完成后,我试着跑:
$ mysql -u root 我收到了错误ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)。 然后我尝试使用sudo运行相同的命令,但我返回了相同的错误。

对类似问题的回答,我试着跑:
sudo /etc/init.d/mysql stop
它返回错误sudo: /etc/init.d/mysql: command not found

如果那时我继续尝试下一步是什么 sudo mysqld_safe --skip-grant-tables
我退回了输出
[2] 27806 [2] + 27806 suspended (tty output) sudo mysqld_safe --skip-grant-tables

另外,运行
mysqld --skip-grant-tables
返回以下错误:
mysqld: Can't change dir to '/usr/local/mysql-8.0.11-macos10.13-x86_64/data/' (OS errno 13 - Permission denied) 2018-04-20T14:29:23.579709Z 0 [System] [MY-010116] [Server] /usr/local/mysql-8.0.11-macos10.13-x86_64/bin/mysqld (mysqld 8.0.11) starting as process 29470 2018-04-20T14:29:23.593533Z 0 [Warning] [MY-010091] [Server] Can't create test file /usr/local/mysql-8.0.11-macos10.13-x86_64/data/Faheems-MacBook-Air.lower-test 2018-04-20T14:29:23.593582Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /usr/local/mysql-8.0.11-macos10.13-x86_64/data/ is case insensitive 2018-04-20T14:29:23.593863Z 0 [ERROR] [MY-010172] [Server] failed to set datadir to /usr/local/mysql-8.0.11-macos10.13-x86_64/data/ 2018-04-20T14:29:23.593889Z 0 [ERROR] [MY-010119] [Server] Aborting 2018-04-20T14:29:23.594332Z 0 [System] [MY-010910] [Server] /usr/local/mysql-8.0.11-macos10.13-x86_64/bin/mysqld: Shutdown complete (mysqld 8.0.11) MySQL Community Server - GPL.

它仍然无法解决原始错误或让我运行mysql。 我在相关问题上几乎尝试了所有答案,但没有任何效果。

感谢任何可以提供帮助的人!

2 个答案:

答案 0 :(得分:2)

尝试了一些修复后,我用
启动了MySQL服务器 $ sudo mysql.server start
然后继续$ mysql_secure_installation为root用户设置密码。

这对我有用。

注意:Homebrew要求您在首次启动MySQL服务器之前首先执行mysql_secure_installation,但这会导致上述错误。

答案 1 :(得分:0)

确实如此

<块引用>

Homebrew 要求你先做 mysql_secure_installation 第一次启动 MySQL 服务器,但结果是 上述错误。

解决方案: