在 OSX 10.10 Yosemite 上自动启动 MySQL

Auto-Start MySQL on OSX 10.10 Yosemite

我已经使用自制程序 (brew install mysql) 安装了 MySQL 以与我的 Rails 应用程序一起使用。完成后,我得到了一个相当详细的设置指南来配置 MySQL 服务器,但是它缺少有关如何配置 MySQL 以在引导后启动的信息。

要使用 MySQL,我必须在 OSX 终端手动执行以下命令:

使用此 Whosebug answer 中的说明,我创建了一个几乎相同的文件,将安装路径替换为我的,但这没有用,因为 MySQL 不是 运行重启后。我还注意到我丢失了 mysqld_safe 文件,如这些说明中所示。我认为这些说明对我不起作用,因为当我在新机器上/OS 安装时那里的 OP 升级了。

我在安装后得到的部分说明如下:

To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system.

我在 /usr/local/Cellar/mysql/5.6.25/support-files 找到了 mysql.server,我也可以用它来启动、停止和检查 MySQL 的状态运行 /path/to/file/mysql.server 具有所需的功能。但是我不知道"right place"在我的系统上的位置,就像说明中所说的那样。

-- 在使用 brew 安装 MySQL 后,如何在我的 Mac 运行 10.10 上自动启动 MySQL?是否有类似于 rc.local(在 Linux 上)的文件,我可以在其中放置启动命令?对这个有帮助吗?

-- 更新 -- 我在 /usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe 处找到了 mysqld_safe,并按照 MySQL Launch Daemon 教程中的说明创建了一个新的 .plist 文件,并将 --user 设置为 mysql 并尝试使用 _mysql,它仍然无法在启动后启动 MySQL。

/Library/LaunchDaemons/com.mysql.mysql.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>KeepAlive</key>
    <true/>
    <key>Label</key>
    <string>com.mysql.mysqld</string>
    <key>ProgramArguments</key>
    <array>
    <string>/usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe</string>
    <string>--user=mysql</string>
    </array>
  </dict>
</plist>

我应该注意到以下任一命令在引导后启动 MySQL:

当我做 - brew info mysql 时,它提到我可以使用以下命令在启动时自动启动 mysql -

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents

我做到了,mysql 在我的 OS X 10.10.3 Yosemite

上启动时自动启动

brew info mysql 文档中,它说:

现在启动 mysql 并在登录时重新启动:

brew services start mysql

如果你读过 brew 手册,你可能会知道。点击 brew services,您将看到“将 Homebrew 公式与 OS X 的 launchctl 管理器集成。服务可以添加到 /Library/LaunchDaemons 或 ~/Library/LaunchAgents。基本上,[= 中的项目13=] 在启动时启动,而 ~/Library/LaunchAgent 中的那些在登录时启动。当使用 sudo 启动时,它运行在 /Library/LaunchDaemons;否则,它在 ~/Library/LaunchAgents 上运行。希望这可能有所帮助。