总结:MacOS如何将mysql服务设置为开机自启

一·背景描述:

1.mysql是利用Homebrew软件包管理器安装的

2.mysql是8.0.32版本

3.苹果电脑是MacBook M2 Pro系统

4.每次开机都需要手动命令开启mysql服务,这样才能连接数据库,比较麻烦

二·解决办法:

1.找到mysql存储数据的目录进行授权

sudo chmod -R 777 /opt/homebrew/var/mysql/

注意: (1)执行该命令需要输入当前mac账户的开机密码 (2)利用homebrew安装的mysql,存储数据的目录一般就是:/opt/homebrew/var/mysql/

2.进入homebrew的安装目录,找到Cellar目录,进入且找到mysql安装目录

3.再找到“homebrew.mxcl.mysql.plist”文件所在的路径:一般就在homebrew安装的mysql目录下面

4.再执行下面的命令:将该文件复制一份到~/Library/LaunchAgents目录下面

命令格式:
sudo cp homebrew.mxcl.mysql.plist文件所在路径  ~/Library/LaunchAgents

本人示例命令:
sudo cp /opt/homebrew/Cellar/mysql/8.0.32/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents

5.重新加载执行文件:homebrew.mxcl.mysql.plist

重新加载该文件命令:
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

三·效果演示:

1.查看后台进程服务,mysqld服务已存在

2.Navicat也可以连接本地数据库

四·若还是不能成功自启mysql服务:则直接修改homebrew.mxcl.mysql.plist文件的mysqld_safe路径值,再重复上述步骤

<?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>homebrew.mxcl.mysql</string>
	<key>LimitLoadToSessionType</key>
	<array>
		<string>Aqua</string>
		<string>Background</string>
		<string>LoginWindow</string>
		<string>StandardIO</string>
		<string>System</string>
	</array>
	<key>ProgramArguments</key>
	<array>
		<string>/opt/homebrew/Cellar/mysql/8.0.32/bin/mysqld_safe</string>
		<string>--datadir=/opt/homebrew/var/mysql</string>
	</array>
	<key>RunAtLoad</key>
	<true/>
	<key>WorkingDirectory</key>
	<string>/opt/homebrew/var/mysql</string>
</dict>
</plist>

注意: (1)“/opt/homebrew/Cellar/mysql/8.0.32/bin/mysqld_safe”:这个mysqld_safe的路径要根据读者的实际安装位置调整,其他都不变 (2)更改完该文件,再按照之前的步骤重新弄一遍,应该就好了

经验分享 程序员 微信小程序 职场和发展