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


当前回答

在我的例子中,只要我使用PID杀死进程,它就会重新启动。此外,brew stop命令不工作,因为我没有使用自制程序安装。然后我打开了mac系统首选项,那里已经安装了MySQL。只要打开它并停止MySQL服务器,你就完成了。在这里的截图中,你可以在系统首选项的底部找到MySQL。

其他回答

Try

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

显然你想:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

你可以进一步阅读《Jeez People,停止为安装RMagic而烦恼》。

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

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

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

所以停下来是这样做的:

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 

您可以检查服务是否仍在运行:

ps ax | grep mysql

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

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

尝试了所有的命令行,还是不行。我要做的事情有:

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.

如果你安装了MacPorts的MySQL 5包:

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

Or

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

如果您安装了mysql5-devel包。