退出MySQL而不重新启动El Capitan

ama*_*ert 20 mysql apache macos osx-elcapitan

我正在运行OS X 10.11 El Capitan及其内置服务器堆栈(Apache 2.4.16,MySQL 5.6.26).

我需要退出mysql,但是立即终止它会重启它.

这是我到目前为止所尝试的:


杀死这个过程

$ ps aux | grep mysql 获得PID返回

74 49484     1   0 10:23AM ??         0:00.46 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid --port=3307
Run Code Online (Sandbox Code Playgroud)

然后,$ sudo kill -9 49484杀死进程,但它会立即以更高的PID重新启动.


从launchd卸载mysqld

$ launchctl list | grep mysql 什么都不返回,所以什么也没有 $ launchctl unload


停止mysql服务器

$ /usr/local/mysql/support-files/mysql.server stop失败并显示"错误!无法找到MySQL服务器PID文件!" 尽管mysql正在运行并且PID文件在/usr/local/mysql/data/mysqld.local.pid中是最新的.


以上是我在Stack Overflow上找到的所有建议的解决方案,这些解决方案都不适用于El Capitan.在优胜美地,简单地杀死进程就足够了,但是随着El Capitan的更新,mysql会立即重新启动.

谢谢.

ama*_*ert 30

最终对我有用的是通过Mac System Preferences界面停止MySQL.没有它回来就杀死了mysql.

在此输入图像描述


小智 9

macOS Sierra,这对我有用

停止MySQL:

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Run Code Online (Sandbox Code Playgroud)

启动MySQL:

launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Run Code Online (Sandbox Code Playgroud)


小智 8

在OS X El Capitan上,这对我有用:

sudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
Run Code Online (Sandbox Code Playgroud)


Shu*_*ary 7

如果您使用homebrew安装 mysql,mysqld除非您使用以下 brew 命令,否则将继续重新启动:

brew services list
Run Code Online (Sandbox Code Playgroud)

酿造服务列表输出

获取要停止的服务名称,然后运行以下命令:

brew services stop mysql@5.5
Run Code Online (Sandbox Code Playgroud)