我正在使用WSL2 Ubuntu,并试图为Laravel应用程序设置环境。我在安装mysql时遇到了问题。我使用了自制软件来安装它,当我尝试用brew services start mysql运行它时,我得到了以下错误:
Failed to connect to bus: No medium found
Error: Failure while executing; `/home/linuxbrew/.linuxbrew/bin/systemctl --user daemon-reload` exited with 1.我试着找一个有同样问题的人,但我似乎是唯一一个。有什么建议吗?
发布于 2022-04-11 15:01:03
我试着找一个有同样问题的人,但我似乎是唯一一个。
很可能没有多少人尝试使用Brew在WSL中的Ubuntu上安装MySQL ;-)。典型的过程是通过apt安装,这将为您提供兼容(但非Oracle)的MariaDB版本,映射到MySQL命令。
如果您需要“正式”MySQL或比Ubuntu存储库中提供的更晚的版本,那么您可以从套餐安装详细的这里 (和许多其他指南)。
至于你的实际问题..。
我还没有真正使用过Brew,但是我在WSL中的一个“一次性”Ubuntu实例中安装了它来确认我的预感。正如我所预期的,作为MySQL安装的一部分,Brew将(第二份) Systemd安装到Brew目录中,作为MySQL依赖项。是的,我可以复制错误信息--这并非意料之外。
WSL与Systemd不兼容(很容易),如本文中关于堆栈溢出(和其他方面)的一些其他问题所详述的那样。我会指给你看我在“问Ubuntu”上的一个回答。
您可能无法轻松地更改Brew试图使用的启动MySQL的方法,所以我的建议是使用股票Ubuntu包。
请注意,官方的.deb可能(我还没有测试)也尝试使用Systemd。
Ubuntu包的好处是它提供了一个“旧风格”SysVInit脚本,它允许您通过sudo service mysql start启动,后者将在WSL上工作。
您可能还可以从直接执行MySQL守护进程开始,并设置适当的命令行和配置。SysVInit脚本和Systemd单元文件都将自动完成这一任务,但也可以手动设置(正如我在另一个答案中所详述的)。
https://stackoverflow.com/questions/71828444
复制相似问题