【问题标题】:Kill parent of mysqld process on MacOS在 MacOS 上杀死 mysqld 进程的父进程
【发布时间】:2020-04-13 16:53:56
【问题描述】:

我有一台 Docker 机器,我希望它能够使用端口 3306。但该端口已经在使用中。

我不记得在主机上安装 MySQL,但这些年来我做了很多愚蠢的事情,所以我很有可能做到了。我运行 brew services list 来查看它是否是阻塞端口的 brew 服务。没有。没有列出任何内容。

所以我运行sudo lsof -i tcp:3306 并得到以下信息:

COMMAND   PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
mysqld  71046 _mysql   28u  IPv6 0xbdab224a8a9b989f      0t0  TCP *:mysql (LISTEN)

好的。很容易杀,对吧?我运行sudo kill -QUIT 71046 并再次运行sudo lsof -i tcp:3306。现在有一个不同的进程在同一个端口上监听:

COMMAND   PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
mysqld  71207 _mysql   28u  IPv6 0xbdab224a8a9ba41f      0t0  TCP *:mysql (LISTEN)

这个过程会重复多次。尝试运行 mysqlmysqld 会遇到 command not found 错误。

所以我的问题是:我必须运行什么命令才能永久阻止 mysqld 无限重生?

(如果您能帮助我摆脱在我的机器启动时自动启动它的设置,则可以加分。)

【问题讨论】:

标签: mysql macos daemon kill lsof


【解决方案1】:

我在上面给出了一条评论,引导您找到答案,但为了未来读者的利益,这里有一个更完整的解释:

我推断您使用的是 MacOS,因为您提到了 brew。 MacOS 很奇怪,因为有多种方法可以运行 MySQL 服务器。 Brew 就是其中之一,但从 MySQL.com 官方下载使用本机包安装程序,并创建一个启动守护进程和一个系统偏好设置窗格来管理启动守护进程。

https://dev.mysql.com/doc/refman/5.7/en/osx-installation-prefpane.html

您可以使用首选项窗格来启动和停止启动守护程序,或启用/禁用其自动启动。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 2010-10-28
    • 2011-09-09
    相关资源
    最近更新 更多