作为开发人员,我们经常发现自己在本地计算机上使用 mysql 数据库。虽然每次系统启动时手动启动 mysql 是可以管理的,但这可能是一项乏味的任务。在本指南中,我们将逐步介绍将 mysql 设置为在 macos 上自动启动的过程,从而节省您的时间并简化您的工作流程。
先决条件
在我们开始之前,请确保您已经:
- 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 在系统启动时自动启动
第 1 部分:手动启动 mysql
要手动启动 mysql,您可以使用 mysql.server 脚本的完整路径:
sudo /usr/local/mysql/support-files/mysql.server start
停止 mysql:
sudo /usr/local/mysql/support-files/mysql.server stop
第 2 部分:自动启动 mysql
为了使 mysql 在系统启动时自动启动,我们将创建一个启动代理。方法如下:
- 创建启动代理 plist 文件:
sudo nano /library/launchdaemons/com.mysql.mysql.plist
- 将以下内容添加到文件中:
<?xml version="1.0" encoding="utf-8"?><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></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 文件的详细说明:
- 标签:启动代理的唯一标识符
- programarguments:要运行的命令(在本例中为 mysql 启动脚本)
- runatload:告诉 macos 在系统启动时运行此
故障排除
如果您遇到问题:
- 检查plist文件中的路径是否与您的mysql安装位置匹配
- 确保您拥有启动 mysql 所需的权限
- 检查 mysql 错误日志(通常位于 /usr/local/mysql/data/[hostname].err)是否有任何启动错误
结论
通过遵循本指南,您现在已经将 mysql 设置为在 macos 系统上自动启动。此设置将节省您的时间并确保您的数据库在您需要时始终准备就绪。请记住,如果需要,您仍然可以使用完整路径命令手动启动和停止 mysql。
编码愉快!
以上就是如何在 macOS 上设置 MySQL 自动启动:开发人员分步指南的详细内容,更多请关注编程网其它相关文章!