作为开发人员,我们经常发现自己在本地计算机上使用 mysql 数据库。虽然每次系统启动时手动启动 mysql 是可以管理的,但这可能是一项乏味的任务。在本指南中,我们将逐步介绍将 mysql 设置为在 macos 上自动启动的过程,从而节省您的时间并简化您的工作流程。
在我们开始之前,请确保您已经:
如果您在 macos 上安装了 mysql,则在使用典型的 mysql.server 启动命令启动它时可能会遇到问题。您可能看到过如下错误:
zsh: command not found: mysql.server
或者尝试连接时:
error 2002 (hy000): can't connect to local mysql server through socket '/tmp/mysql.sock' (2)
这些问题通常会出现,因为 mysql 命令不在系统的 path 中,或者 mysql 服务器未运行。
解决方案涉及两部分:
要手动启动 mysql,您可以使用 mysql.server 脚本的完整路径:
sudo /usr/local/mysql/support-files/mysql.server start
停止 mysql:
sudo /usr/local/mysql/support-files/mysql.server stop
为了使 mysql 在系统启动时自动启动,我们将创建一个启动代理。方法如下:
sudo nano /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>label</key> <string>com.mysql.mysql</string> <key>programarguments</key> <array> <string>/usr/local/mysql/support-files/mysql.server</string> <string>start</string> </array> <key>runatload</key> <true/> </dict> </plist>
保存文件并退出编辑器(在 nano 中,按 ctrl+x,然后按 y,然后 enter)。
为plist文件设置正确的权限:
sudo chown root:wheel /library/launchdaemons/com.mysql.mysql.plist sudo chmod 644 /library/launchdaemons/com.mysql.mysql.plist
sudo launchctl load /Library/LaunchDaemons/com.mysql.mysql.plist
我们创建的启动代理告诉 macos 在系统启动时运行 mysql 启动脚本。以下是 plist 文件的详细说明:
如果您遇到问题:
通过遵循本指南,您现在已经将 mysql 设置为在 macos 系统上自动启动。此设置将节省您的时间并确保您的数据库在您需要时始终准备就绪。请记住,如果需要,您仍然可以使用完整路径命令手动启动和停止 mysql。
编码愉快!