无法在Mac OSX 10.6上停止Mysql 5.1

时间:2011-07-14 17:38:09

标签: mysql macos shutdown

我正在尝试在MacOSX 10.6上停止Mysql v5.1,以便我可以升级到Mysql v5.5。

我相信我在几个月前从源代码安装了v5.1。我尝试了这里列出的所有方法:How do you stop MySQL on a Mac OS install?

但是,当我执行“mysqladmin shutdown”时,似乎os只会产生另一个mysql进程:

$ sudo mysqladmin shutdown
$ ps -Af | grep mysql
   74 53283     1   0   0:00.01 ??         0:00.01 /bin/sh /usr/local/mysql/bin/mysqld_safe
   74 53324 53283   0   0:00.01 ??         0:00.03 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --log-error=/usr/local/mysql/var/Al.local.err --pid-file=/usr/local/mysql/var/Al.local.pid
  501 53343 52577   0   0:00.00 ttys003    0:00.00 grep mysql

如果我试图杀死这个过程,也会发生同样的事情。 (但是如果我试图杀死mysqld_safe进程,我会得到“没有这样的过程”)

我查看了/ Library / StartupItems并且没有MySQL目录。我知道我没有使用MacPorts来安装Mysql。

我在这里缺少什么?我该如何杀死这头野兽?

3 个答案:

答案 0 :(得分:12)

@Sly - 你的修复效果很好。但是,如果您不想重新启动,我发现(在man launchctl中)您还可以通过发出以下命令停止重启mysql:

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

PS:您的com.mysql.mysqld.plist文件可能位于/ Library / LaunchDaemons或/ Library / LaunchAgents或〜/ Library / LaunchDaemons或〜/ Library / LaunchAgents

答案 1 :(得分:2)

我有一个没有启动器守护程序的类似安装。我在终端上运行mysqld。我发现我可以关闭它的唯一方法是将信号11发送到mysqld进程。

答案 2 :(得分:1)

MySQL使用launchctl启动,借助launchctrl来卸载它

  launchctl interfaces with launchd to load, unload daemons/agents and generally control launchd

尝试卸载应解决问题

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

如果mysql没有使用launchctl utilty加载,那么unload将不会停止mysql然后在这种情况下常规sudo mysqladmin shutdown will work