如何在Mac OS安装上停止MySQL?

时间:2008-09-19 10:21:43

标签: mysql macos

我通过MacPorts安装了MySQL。我需要什么命令来停止服务器(我需要测试我的应用程序在MySQL死机时的行为)?

23 个答案:

答案 0 :(得分:355)

根据您是使用官方二进制安装程序安装MySQL,使用MacPorts还是使用Homebrew,有不同的情况:

MacPorts的

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

注意:重启后这是持久的。

自制

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

二进制安装程序

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

答案 1 :(得分:126)

对于那些使用自制软件安装MySQL的人,请使用以下命令启动,停止或重启MySQL

Brew开始

/usr/local/bin/mysql.server start

重新启动

/usr/local/bin/mysql.server restart

Brew stop

/usr/local/bin/mysql.server stop

答案 2 :(得分:62)

您可以随时使用命令“mysqladmin shutdown”

答案 3 :(得分:29)

如果您使用的是homebrew,则可以使用

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

获取可用服务列表

brew services list

答案 4 :(得分:18)

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

答案 5 :(得分:14)

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

您也可以在此处使用启动和重启。我通过查看/Library/LaunchDaemons/org.macports.mysql.plist的内容找到了这个。

答案 6 :(得分:12)

显然你想要:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

进一步阅读 Jeez People, Stop Fretting Over Installing RMagic

答案 7 :(得分:9)

尝试

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

其他尝试:

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

但是,我发现第二个选项只有在加载.plist时才有效(OS X 10.6,MySQL 5.1.50):

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

PS:我还发现我需要卸载.plist以获得MAMP - MySQL的无关安装,以正确启动/停止。运行完毕后,MAMP-MySQL启动就好了:

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

答案 8 :(得分:7)

在我的mac osx yosemite 10.10上。这个命令有效:

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

您可以在文件夹/ Library / LaunchDaemons /中找到您的mysql文件以运行

答案 9 :(得分:5)

使用:

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

有人可能会因为没有使用sudo而逃脱。例如,用户可以是root用户(即MySQL root用户)。

答案 10 :(得分:4)

好吧,如果所有其他方法都失败了,你可以采取无情的方法,并手动杀死运行MySQL的进程。

即,

ps -Af

列出所有进程,然后执行“kill <pid>”,其中<pid>是MySQL守护进程(mysqld)的进程ID。

答案 11 :(得分:4)

最新的OSX(10.8)和mysql 5.6,该文件位于Launch Daemons下,是com.oracle.oss.mysql.mysqld.plist。它在“系统选项”下提供了一个选项,通常是列表的底部。因此,转到系统设置,单击Mysql,然后从选项框中将其关闭。 https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html

答案 12 :(得分:3)

就我而言,一旦我使用PID终止了进程,它就会继续重新启动。同样,new WazeClass.WazeShow(getApplicationContext()).execute("address"); 命令在不使用自制软件安装时无法正常工作。然后我进入了Mac系统偏好设置,并在那里安装了MySQL。只需打开它并停止MySQL服务器即可。在屏幕截图中,您可以在系统偏好设置的底部找到MySQL。 enter image description here

答案 13 :(得分:2)

对我而言,它正在使用“mysql5”

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

答案 14 :(得分:1)

正如@gediminas 所说

系统偏好设置 > MySQL > 停止 MySQL 服务器

是最简单的方法。使用从 Oracle 下载的二进制安装程序。

答案 15 :(得分:1)

获取实例名称:

ls /Library/LaunchDaemons | grep mysql

停止 MySQL 实例(适用于 MacOS Catalina、MySQL 8):

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

或者,您可以在

中停止 MySQL 实例
MacOS Settings > MySQL > Stop MySQL Server 

此外,请在此处查看更多方法: https://tableplus.com/blog/2018/10/how-to-start-stop-restart-mysql-server.html

答案 16 :(得分:1)

在OSX Snow Leopard上

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

答案 17 :(得分:0)

尝试所有这些命令行后,它不起作用。我必须执行以下操作:

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

通过这种方式,mysqld进程消失了。但是/var/log/system.log有很多垃圾:

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.

答案 18 :(得分:0)

的MySQL&GT;显示变量,其中variable_name类似于&#39;%dir%&#39;;

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

答案 19 :(得分:0)

这在具有8.0.12 MySQL的macOS 10.13.6上对我有用

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

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

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

答案 20 :(得分:0)

对我来说,以下解决方案有效Unable to stop MySQL on OS X 10.10

要停止我使用的自动启动:

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

并杀死我使用的服务:

sudo pkill mysqld

答案 21 :(得分:0)

我在macports上安装了mysql5和mysql55。对我来说,这里提到的文件位于以下地方:

(mysql55服务器) /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

因此停止这些作品:

mysql55-服务器:

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 

您可以使用以下命令检查服务是否仍在运行:

ps ax | grep mysql

此外,您可以在此处查看我的案例中的日志文件:

mysql55服务器

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

答案 22 :(得分:0)

如果您使用MacPorts安装了MySQL 5软件包:

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

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

如果您安装了mysql5-devel包。