我使用brew安装了[电子邮件受保护]。安装后,我使用
brew services start [email protected]
启动了服务。使用 brew services
检查表明其工作正常。
在第一次之后的任何尝试中,行为都是不同的。我运行
brew services start [email protected]
然后我得到:
Bootstrap failed: 5: Input/output error
Try re-running the command as root for richer errors.
Error: Failure while executing; `/bin/launchctl bootstrap gui/505 /Users/Mahmoud/Library/LaunchAgents/[email protected]` exited with 5.
如果我尝试重新启动服务,使用
brew services restart [email protected]
我得到
Stopping `[email protected]`... (might take a while)
==> Successfully stopped `[email protected]` (label: [email protected])
==> Successfully started `[email protected]` (label: [email protected])
但是使用
brew services
检查会显示服务已停止:
Name Status User File
[email protected] stopped root ~/Library/LaunchAgents/[email protected]
使用
brew services stop [email protected]
手动停止服务并重新启动效果不佳。
也尝试使用
brew uninstall [email protected]
卸载并使用brew install [email protected]
重新安装,但问题仍然存在。我尝试环顾四周,但没有看到有人遇到同样的问题。关于如何解决这个问题有什么想法吗?
环境:M1 MPB,OSX 12.4
花了一整天的时间,终于找到了一个有效的解决方案。
使用
brew services stop [email protected]
停止服务
删除启动代理文件
rm ~/Library/LaunchAgents/[email protected]
取消链接服务(如果已链接)
brew unlink [email protected]
卸载服务
brew uninstall [email protected]
然后我删除了上面建议的 mysql 数据目录。这不在我机器上的
/usr/local/var/mysql
中,而是 /opt/homebrew/var/mysql
所以
rm -rf /opt/homebrew/var/mysql
这不是我的最后一步。此时重新安装给了我一堆错误,并且brew安装后步骤失败了。大多数错误都指向我的
my.cnf
文件。我发现在尝试重新安装之前删除此文件可以防止这些错误。
我对此文件进行了备份,以防万一这会导致更多问题。
cp /opt/homebrew/etc/my.cnf /opt/homebrew/etc/my.cnf.backup
然后,
rm /opt/homebrew/etc/my.cnf
注意:此文件可能位于您计算机上的不同位置。
好的,现在进行全新安装。
brew install [email protected]
brew link [email protected] --force
如果链接该包,您可以按照brew日志建议将其添加到您的路径中。因此,将
export PATH="/opt/homebrew/opt/[email protected]/bin:$PATH"
添加到您的 ~/.zshrc
。
使用
brew services list
或 brew services
验证服务是否可用。
如果您看到 [电子邮件受保护],请继续并以
brew services start [email protected]
开始
我今天遇到了同样的问题,并注意到我在
/usr/local/var/mysql/
目录中已经有数据,可能来自以前的安装。
我不在乎丢失目录中的任何内容,因此我将其全部删除了
rm -rf /usr/local/var/mysql
并运行了brew uninstall [email protected]
和brew install [email protected]
。
当我下次检查时
brew services list
它已经在运行,这是以前没有发生过的事情,而且一切正常。
这是我后来在酿造过程中发现的一个关键问题。
如上
brew services
所示,用户是root,而不是当前用户。
这是一个非常严重的问题,也是这个问题的主要原因。解决这个问题的方法是:
sudo su
brew services
你应该找到 root 拥有的服务brew stop [email protected]
brew uninstall [email protected]
这些基本上为 root 用户卸载 [电子邮件受保护]
exit
返回给用户。
brew install [email protected]
brew upgrade mysql