Laurie Young
Laurie Young

Reputation: 138434

How do you stop MySQL on a Mac OS install?

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)?

Upvotes: 260

Views: 365244

Answers (24)

Upasana Mittal
Upasana Mittal

Reputation: 2680

For Mac M1 Pro, Go to system settings and Mysql at the bottom, Then click on stop MySQL server:

Stop MySQL server

Upvotes: 12

Jaime Bula
Jaime Bula

Reputation: 51

As @gediminas said

System Preferences > MySQL > Stop MySQL Server

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

Upvotes: 3

Gediminas Šukys
Gediminas Šukys

Reputation: 7391

Get instance name:

ls /Library/LaunchDaemons | grep mysql

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

sudo launchctl unload /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Or, you can Stop MySQL instance in

MacOS Settings > MySQL > Stop MySQL Server 

Also, check here for more methods: https://tableplus.com/blog/2018/10/how-to-start-stop-restart-mysql-server.html

Upvotes: 6

codeaprendiz
codeaprendiz

Reputation: 3195

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

Upvotes: 4

Szekelygobe
Szekelygobe

Reputation: 2667

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

Upvotes: 1

mloughran
mloughran

Reputation: 11804

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

Homebrew

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

MacPorts

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

Upvotes: 546

Abhijeet Khangarot
Abhijeet Khangarot

Reputation: 1567

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

Upvotes: 35

bronze man
bronze man

Reputation: 1607

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 com.apple.xpc.launchd[1] (homebrew.mxcl.mysql[78049]): Service exited with abnormal code: 1
Jul  9 14:10:54 xxx com.apple.xpc.launchd[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

Upvotes: 1

ppostma1
ppostma1

Reputation: 3676

Latest OSX (10.8) and mysql 5.6, the file is under Launch Daemons and is com.oracle.oss.mysql.mysqld.plist. 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. https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html

Upvotes: 5

Jan
Jan

Reputation: 16094

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

Upvotes: 58

Duc Chi
Duc Chi

Reputation: 421

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

Upvotes: 9

sweetfa
sweetfa

Reputation: 5845

On OSX Snow Leopard

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

Upvotes: 2

pjammer
pjammer

Reputation: 9577

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

Upvotes: 147

Jack Peng
Jack Peng

Reputation: 632

mysql> show variables where variable_name like '%dir%';

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

Upvotes: 0

John Montgomery
John Montgomery

Reputation: 9058

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).

Upvotes: 4

Steve
Steve

Reputation: 756

Use:

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).

Upvotes: 11

zack
zack

Reputation: 3198

Try

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

Upvotes: 11

Bartosz Blimke
Bartosz Blimke

Reputation: 6618

If you installed the MySQL 5 package with MacPorts:

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

Or

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

if you installed the mysql5-devel package.

Upvotes: 1

Dan
Dan

Reputation: 63400

Apparently you want:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

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

Upvotes: 12

Moesio
Moesio

Reputation: 3178

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

Upvotes: 24

Manuel_B
Manuel_B

Reputation: 565

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

(mysql55-server) /opt/local/etc/LaunchDaemons/org.macports.mysql55-server/org.macports.mysql55-server.plist

(mysql5) /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist

So stopping for these works like this:

mysql55-server:

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

mysql5:

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:

mysql55-server

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>-MacBook-Pro.local.pid ended

mysql5:

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

Upvotes: 0

Allisone
Allisone

Reputation: 9054

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

Upvotes: 2

katy lavallee
katy lavallee

Reputation: 2771

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.

Upvotes: 15

Rimantas
Rimantas

Reputation: 1491

You can always use command "mysqladmin shutdown"

Upvotes: 81

Related Questions