首先,知道数据目录对我来说是关键。 /usr/local/var/mysql
在这里,至少有一个扩展名为.err的文件,然后加上我的本地计算机名称。它具有我需要诊断的所有信息。
我想我先安装mysql 8搞砸了。我的应用与其不兼容,因此我不得不降级至5.7
适用于我的解决方案是转到/usr/local/etc/my.cnf
如果存在,请找到此行。我认为它与mysql 8有关:
mysqlx-bind-address = 127.0.0.1
删除它,因为在mysql 5.7中它在错误日志中说它不喜欢它
如果该行不在bind-address下,也请在其中添加。
socket=/tmp/mysql.sock
转到 /tmp
目录并删除其中的所有mysql.sock文件。在服务器启动时,它将重新创建袜子文件
在停止状态下使用mySQL删除数据目录。我的是 /usr/local/var/mysql
。这是日志所在的位置
从那里我跑了
>mysqld --initialize
然后一切都开始工作...此命令将在最后为您提供一个随机密码。保存该密码以进行下一步
运行它来分配我自己的密码。
>mysql_secure_installation
都
>brew services stop mysql@5.7
和
>mysql.server start
现在正在工作。希望这可以帮助。大约需要3个小时的反复试验。