How do you stop MySQL on a Mac OS install?

All we need is an easy explanation of the problem, so here it is.

I installed MySQL via MacPorts. What is the command I need to stop the server (I need to test how my application behave when MySQL is dead)?

How to solve :

I know you bored from this bug, So we are here to help you! Take a deep breath and look at the explanation of your problem. We have many solutions to this problem, But we recommend you to use the first method because it is tested & true method that will 100% work for you.

Method 1

There are different cases depending on whether you installed MySQL with the official binary installer, using MacPorts, or using Homebrew:


brew services start mysql
brew services stop mysql
brew services restart mysql


sudo port load mysql57-server
sudo port unload mysql57-server

Note: this is persistent after a reboot.

Binary installer

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

Method 2

For those who used homebrew to install MySQL use the following commands below to start, stop, or restart MySQL

Brew start

/usr/local/bin/mysql.server start

Brew restart

/usr/local/bin/mysql.server restart

Brew stop

/usr/local/bin/mysql.server stop

Method 3

You can always use command “mysqladmin shutdown”

Method 4

If you are using homebrew you can use

brew services restart mysql
brew services start mysql
brew services stop mysql

for a list of available services

brew services list

Method 5

sudo /usr/local/mysql/support-files/mysql.server stop

Method 6

In my case, it kept on restarting as soon as I killed the process using PID. Also brew stop command didn’t work as I installed without using homebrew. Then I went to mac system preferences and we have MySQL installed there. Just open it and stop the MySQL server and you’re done. Here in the screenshot, you can find MySQL in bottom of system preferences. enter image description here

Method 7

sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop

You can also use start and restart here. I found this by looking at the contents of /Library/LaunchDaemons/org.macports.mysql.plist.

Method 8

Apparently you want:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

Have a further read in Jeez People, Stop Fretting Over Installing RMagic.

Method 9


sudo <path to mysql>/support-files/mysql.server start
sudo <path to mysql>/support-files/mysql.server stop

Else try:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop<br>
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

However, I found that the second option only worked (OS X 10.6, MySQL 5.1.50) if the .plist has been loaded with:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

PS: I also found that I needed to unload the .plist to get an unrelated install of MAMP-MySQL to start / stop correctly. After running running this, MAMP-MySQL starts just fine:

sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist

Method 10


sudo mysqladmin shutdown --user=*user* --password=*password*

One could probably get away with not using sudo. The user could be root for example (that is, the MySQL root user).

Method 11

On my mac osx yosemite 10.10. This command worked:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysql.plist

You can find your mysql file in folder /Library/LaunchDaemons/ to run

Method 12

Latest OSX (10.8) and mysql 5.6, the file is under Launch Daemons and is It presents an option under System Options, usually the bottom of the list. So go to system settings, click on Mysql, and turn it off from the option box.

Method 13

Well, if all else fails, you could just take the ruthless approach and kill the process running MySQL manually.

That is,

ps -Af

to list all processes, then do “kill <pid>” where <pid> is the process id of the MySQL daemon (mysqld).

Method 14

Get instance name:

ls /Library/LaunchDaemons | grep mysql

Stop MySQL instance (Works on MacOS Catalina, MySQL 8):

sudo launchctl unload /Library/LaunchDaemons/

Or, you can Stop MySQL instance in

MacOS Settings > MySQL > Stop MySQL Server 

Also, check here for more methods:

Method 15

As @gediminas said

System Preferences > MySQL > Stop MySQL Server

Was the easiest way. With binary installer downloaded from Oracle.

Method 16

For me it’s working with a “mysql5”

sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

Method 17

On OSX Snow Leopard

launchctl unload /System/Library/LaunchDaemons/org.mysql.mysqld.plist

Method 18

For me the following solution worked Unable to stop MySQL on OS X 10.10

To stop the auto start I used:

sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysql.plist

And to kill the service I used:

sudo pkill mysqld

Method 19

If you installed the MySQL 5 package with MacPorts:

sudo launchctl  unload -w /Library/LaunchDaemons/org.macports.mysql.plist 


sudo launchctl  unload -w /Library/LaunchDaemons/org.macports.mysql5-devel.plist 

if you installed the mysql5-devel package.

Method 20

After try all those command line, and it is not work.I have to do following stuff:

mv /usr/local/Cellar/mysql/5.7.16/bin/mysqld /usr/local/Cellar/mysql/5.7.16/bin/mysqld.bak
mysql.server stop

This way works, the mysqld process is gone. but the /var/log/system.log have a lot of rubbish:

Jul  9 14:10:54 xxx[1] (homebrew.mxcl.mysql[78049]): Service exited with abnormal code: 1
Jul  9 14:10:54 xxx[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

Method 21

I installed mysql5 and mysql55 over macports. For me the mentioned files here are located at the following places:



So stopping for these works like this:


sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql55-server/org.macports.mysql55-server.plist


sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist 

You can check if the service is still running with:

ps ax | grep mysql

Further you can check the log files in my case here:


sudo tail -n 100 /opt/local/var/db/mysql55/<MyName>-MacBook-Pro.local.err
130213 08:56:41 mysqld_safe mysqld from pid file /opt/local/var/db/mysql55/<MyName> ended


sudo tail -n 100 /opt/local/var/db/mysql5/<MyName>-MacBook-Pro.local.err
130213 09:23:57  mysqld ended

Method 22

mysql> show variables where variable_name like ‘%dir%’;

| datadir | /opt/local/var/db/mysql5/ |

Method 23

This worked for me on macOS 10.13.6 with 8.0.12 MySQL

/usr/local/mysql/support-files/mysql.server start

/usr/local/mysql/support-files/mysql.server restart

/usr/local/mysql/support-files/mysql.server stop

Note: Use and implement method 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from or, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply