【问题标题】:Unable to stop MySQL on OS X 10.10无法在 OS X 10.10 上停止 MySQL
【发布时间】:2015-06-05 04:23:18
【问题描述】:

我开始为此发疯了。 我使用 Coolest Guides On The Planet 的教程设置 MySQL/Apache/PHP。 我猜是出了点问题,因为它没有按预期工作,所以我想卸载并重试。

问题是我无法通过系统偏好设置或命令行来停止 MySQL。我一直在网上尝试建议,但到目前为止没有成功。 有人可以帮忙吗?

【问题讨论】:

    标签: mysql osx-yosemite


    【解决方案1】:

    终于绕过了自动启动 - 感谢所有做出贡献并让我看到道路的人。

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

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

    并杀死我使用的服务:

    sudo pkill mysqld
    

    【讨论】:

    • 是的!谢谢。无法弄清楚如何防止它自动启动备份。即使编辑 com.mysql.mysql.plist 以将 autostart 设置为 false 也无济于事。这有效
    • 最后...谢谢!此外,您可以直接转到 SysPreferenses/MySQL 并按下停止按钮,而不是 pkill。
    • 谢谢!在我的机器中,我使用了这个命令sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist。请注意,plist 文件名略有不同。
    • 感谢 sudo pkill mysqld 适用于 macOS High Sierra
    • 感谢 Hutlion sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist 在莫哈韦工作
    【解决方案2】:

    这对我有用。它以不同的 plist 名称列出:

    sudo launchctl unload -w com.oracle.oss.mysql.mysqld.plist
    

    【讨论】:

    • 我为此苦苦挣扎了 8 个小时。我从 osx lion 和 mysql 5.5 升级到 el capital 和 mysql 5.7。新版本安装正确,但由于某种原因我永远无法启动它。意识到有另一个 mysql 进程已经在运行,但无法弄清楚它是如何配置的。每次我杀死 mysqld 它都会重新出现。是由这个启动控件引起的
    【解决方案3】:

    对于 Mac 用户 kill -9 {pid} 不断重启进程。这是因为我运行了 MySQL 服务器。在 OSX 上,我必须:

    1- 系统偏好设置。

    2- 搜索 mysql。

    3- 按停止 MySQL 服务器按钮。

    从一个 github 问题中得到它,它解决了我的问题

    https://github.com/docker/compose/issues/4950#issuecomment-407145733

    【讨论】:

    • 谢谢!!!这也解决了我的问题......如果没有 MySQL 自动重启,就无法关闭端口 3306。
    【解决方案4】:

    我也遇到了同样的问题,无法通过 macOS High Sierra 上的系统偏好设置来停止 MySql Sever

    我在终端窗口上输入了brew uninstall mysql

    现在我可以通过系统偏好设置停止 MySql Sever

    由于我的 mac 上安装了 mysql 2 方式二进制文件以及自制程序。

    【讨论】:

    • 你可以使用launchctl list|grep mysqlbrew services stop mysql@5.7找到哪个版本
    【解决方案5】:

    brew services stop mysql@5.6 为我工作,而其他一切都失败了。

    【讨论】:

      【解决方案6】:

      在终端中

      kill `pgrep mysqld`
      

      这会杀死 mysqld 进程。

      【讨论】:

      • 当我尝试这个时,我收到消息:-bash: kill: (205) - Operation not allowed
      • 添加 sudo。所以,sudo kill pgrep mysqld
      • 为什么不直接使用pkill
      • 这个命令给了我以下信息:kill: 非法进程 id: pgrep kill: 非法进程 id: mysqld
      • sudo pkill mysqld 工作!但它几乎立即重新启动:/ 所以坦克你解决问题 1 ......请你现在就问题 2 给我建议......我如何阻止它重新启动?谢谢
      【解决方案7】:

      如果您使用brew,那么您可以通过以下方式了解您使用的是哪个版本:

      launchctl list|grep mysql
      

      这将打印类似

      92555   0   homebrew.mxcl.mysql@5.7
      
      

      就我而言,我使用的是 mysql@5.7

      您可以停止使用:

      brew services stop mysql@5.7
      

      【讨论】:

        【解决方案8】:

        尝试在命令行中发出以下命令:

        ps -xo pid,ppid,stat,command | grep mysqld
        

        它将向您显示您的进程,其父 ID 在第二列中。查找 mysqld 及其父进程。定位后,发出:

        sudo kill pid
        

        其中 pid 是 mysqld 的父进程 ID。

        编辑 如果您想阻止该进程再次启动,请尝试:

        sudo launchctl unload  /System/Library/LaunchDaemons/mysqld.plist
        

        【讨论】:

        • 在命令行响应603 597 U+ grep mysqld 哪个是父进程id?谢谢
        • 这是 597。尝试:sudo kill 597,如果失败,sudo kill -9 597
        • 第二个命令表示进程已完成,但在系统首选项中 MySQL 仍在运行
        • 使用 sudo launchctl unload /System/Library/LaunchDaemons/mysqld.plist 给我 /System/Library/LaunchDaemons/mysqld.plist:没有这样的文件或目录
        • 也许可以试试sudo launchctl unload /System/Library/LaunchDaemons/mysql.plist
        【解决方案9】:

        我已经通过自制软件安装了 mysql,但是使用mysql stop 命令停止了 mysql,mysql 现在重新启动。 如果您的 mysql 是通过 homebrew 安装的,请尝试执行以下命令

        brew services stop $(brew list | grep mysql)
        

        【讨论】:

          猜你喜欢
          • 2014-12-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-24
          • 1970-01-01
          • 1970-01-01
          • 2015-07-09
          • 1970-01-01
          相关资源
          最近更新 更多