I\'m running OS X 10.11 El Capitan with its built-in server stack (Apache 2.4.16, MySQL 5.6.26).
I need to quit mysql, but killing the process immediately restarts i
On macOS Sierra
, this worked for me
Stop MySQL:
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Start MySQL:
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
As per Theory's answer, this is still effective for Mojave
.
sudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
Per amacrobert, if you are facing this issue of mysqld
continuing starting up, this is most likely due to you having mysql
installed on the system level and by default, it will startup automatically on a computer restart.
In my situation, I was confused after a computer restart why my docker
mysql
container complained about an already allocated port. After continual debugging, I remember I installed mysql
on the system level and never restarted my computer!
Cheer.
this stopped mysql for me on Mac Sierra
sudo launchctl unload -F /Library/LaunchDaemons/homebrew.mxcl.mysql@5.7.plist
On my config I found this:
$ cat /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/mysql/bin/mysqld_safe</string>
<string>--user=mysql</string>
</array>
</dict>
</plist>
You need to: change that true tag after KeepAlive to false and unload the daemon as others have suggested.
In my case that was:
sudo launchctl unload -F /Library/LaunchDaemons/com.mysql.mysql.plist && launchctl load /Library/LaunchDaemons/com.mysql.mysql.plist
Once the daemon will have restarted with the new config it will not keep mysql from being shut down when you kill it from the preferences.
What finally worked for me was stopping MySQL through the Mac System Preferences interface. That killed mysql without it coming back.
I found that the following commands worked for me:
To Stop mysql:
sudo launchctl unload -F /Library/LaunchDaemons/com.mysql.mysql.plist
To Start mysql:
sudo launchctl load -F /Library/LaunchDaemons/com.mysql.mysql.plist