【问题标题】:MySQL Database won't start in XAMPP Manager-osxMySQL 数据库不会在 XAMPP Manager-osx 中启动
【发布时间】:2014-02-11 13:47:14
【问题描述】:

我大约一个月前下载了 XAMPP,它运行良好。今天我安装了一个语音识别软件,然后重新启动了我的电脑。从那时起,MySQL 就不会在我的 manager-osx 应用程序中启动。它不会让我在应用程序日志中出现问题。它是这样说的:

Stopping all servers...
Stopping Apache Web Server...
/Applications/XAMPP/xamppfiles/apache2/scripts/ctl.sh : httpd stopped
Stopping ProFTPD...
Checking syntax of configuration file
/Applications/XAMPP/xamppfiles/proftpd/scripts/ctl.sh : proftpd stopped
Restarting all servers...
Starting MySQL Database...

Starting Apache Web Server...
/Applications/XAMPP/xamppfiles/apache2/scripts/ctl.sh : httpd started
Starting ProFTPD...
Checking syntax of configuration file
/Applications/XAMPP/xamppfiles/proftpd/scripts/ctl.sh : proftpd started

我的 ProFTPD 和我的 Apache Web 服务器都在运行。 MySQL 不是。 当我转到 phpmyadmin 时,它会向我抛出此错误消息。

#2002 - No such file or directory
The server is not responding (or the local server's socket is not correctly configured).

请帮助我。我不知道该怎么办。

更新:

在网上浏览了一下之后,我发现一个用户在使用 MAMP 时遇到了类似的问题,另一个用户建议杀死 mysql 进程,这意味着什么。这可以解决我的问题吗?

更新 2:

我找到了问题的答案,但我还不能回答。所以这里是答案:

1) 打开终端并输入

sudo su

然后输入你的密码

2) 然后输入

ps aux | grep mysql

(复制粘贴即可)

3) 你需要获取mysql的进程ID。顶部附近应该有数字,例如 739 或 8827

4) 使用终止进程

kill -9 {process id}

这应该看起来像这样:kill -9 739

5) 在 manager-osx 中重启 MySQL

【问题讨论】:

  • 问题是从什么时候开始的?
  • 你也可以去实用程序文件夹中的活动监视器并杀死那里的进程。
  • 我还建议备份您的 Web 目录文件夹并重新安装 xampp.. 这对我有用。
  • 您认为造成问题的原因是什么?
  • 我在我的 mac 中安装了另一个 mysql。我停止了那个然后它解决了。

标签: php mysql macos xampp


【解决方案1】:

这应该可以:
sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

【讨论】:

  • 这在 manager-osx 无法在您的本地主机上启动 mySQL 数据库时有效
  • 太棒了,这行得通!不过,我很好奇,为什么 manager-osx 启动 mySQL,如果我必须 sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start ?或者可以更正 manager-osx 脚本吗?
  • 对我不起作用:Starting MySQL ..................................................................................................... ERROR! The server quit without updating PID file (/Applications/XAMPP/xamppfiles/var/mysql/gmac.local.pid).
  • @GeoffreyHale 和其他所有面临此问题的人:查看您的日志 (/Applications/XAMPP/xamppfiles/var/mysql/YOURNAME.err),您可能会发现导致错误的原因。我的是[ERROR] InnoDB: Unable to lock /Applications/XAMPP/xamppfiles/var/mysql/ibdata1, error: 35[Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files. 见鬼!那是对的!杀死mysqld进程,输入benshittu的命令,它应该可以工作了。
  • 这对我不起作用。当你这样做时,你使用的是什么版本的 XAMPP?出于应用程序兼容性的原因,我使用的是 1.8.3-4。
【解决方案2】:

最小指南

1。 sudo killall mysqld

2。 manager-osx > 启动mysql


如果这不起作用......

sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

Google 错误...


示例:

错误:

ERROR! The server quit without updating PID file (/Applications/XAMPP/xamppfiles/var/mysql/<computername>.local.pid)

我的解决方案:

/Applications/XAMPP/xamppfiles/etc/my.cnf 中将user = <uid> 中的<uid>id 命令改为uid

$ id
uid=...

$ vim /Applications/XAMPP/xamppfiles/etc/my.cnf
...

【讨论】:

  • 绝对帮助了我。谢谢。
  • 似乎“sudo killall mysqld”没有捕获所有正在运行的 mysql 实例。我用自制软件运行了 mysql,所以检查“brew services”,如果 mysql 进程在那里运行,用“brew services stop mysql”停止它
【解决方案3】:

如果这些命令对您不起作用:

sudo killall mysqld
sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

试试这个:

对于 XAMPP 7.1.1-0,我将端口号从 3306 更改为 3307。

  1. 点击管理服务器
  2. 选择MySQL 数据库
  3. 点击右侧的配置
  4. 将端口号更改为 3307
  5. 点击确定
  6. 关闭控制面板并重新启动。

您现在可以出发了。

【讨论】:

  • 我尝试更改端口并重新启动管理器为我工作。谢谢。
  • 完美的人,我将端口号从 3306 更改为 3307。谢谢!
  • 我尝试了同样的事情,但不适用于新的 xampp 7.2.2:收到错误消息后(我的问题被阻止,因此我无法在 stackoverflow 上提出新问题)Starting MySQL .2018-03-06 11:21:32 3610 mysqld_safe Logging to '/Applications/XAMPP/xamppfiles/var/mysql/Bharats-iMac.local.err'. 2018-03-06 11:21:32 3610 mysqld_safe Starting mysqld daemon with databases from /Applications/XAMPP/xamppfiles/var/mysql ERROR!
  • 我运行这个命令 sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start 它对我有用。
  • 将XAMPP MySQL的端口改为3307就可以了!
【解决方案4】:

检查 /Applications/XAMPP/xamppfiles/var/mysql/ 上的错误日志,文件名类似于 your_machine_name.local.err,如果您发现类似以下内容:“尝试打开以前打开的表空间。以前的表空间 ... 使用空间ID"

以下对我有用:

编辑文件:

/Applications/XAMPP/xamppfiles/etc/my.cnf

找到 [mysqld] 部分,添加一行:

innodb_force_recovery = 1

然后运行

sudo /Applications/XAMPP/bin/mysql.server 启动

一切都好起来了。

然后是最后一步:

再次编辑 my.cnf 并删除您刚刚添加的行:

innodb_force_recovery = 1

然后重新启动 mysql。否则你所有的表都将是只读的

【讨论】:

    【解决方案5】:

    尝试在终端中运行这两个命令:

    1. sudo killall mysqld
    2. sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

    【讨论】:

      【解决方案6】:

      对我来说,以下工作:将文件/Applications/XAMPP/xamppfiles/etc/my.cnf 的“所有人”的权限更改为“只读”。然后从 XAMPP 管理器启动 MySQL。

      【讨论】:

      • 为我工作!完美!
      • 这是否意味着您在终端中执行chmod 444 my.cnf
      【解决方案7】:

      我首先无法使用此处发布的命令杀死 mysql 守护进程。于是我想起了我的 linux 时代,做了以下事情:

      我通过在一个终端窗口中运行top 来监控正在运行的进程。然后我通过sudo killall mysqld(拧紧PID ;-))杀死了另一个mysqld,并通过sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start重新启动。

      【讨论】:

        【解决方案8】:
        1. 关闭 XAMPP 控件
        2. sudo killall mysqld
        3. sudo /Applications/XAMPP/xamppfiles/bin/mysql.server 启动

        【讨论】:

        • 为我工作! – 如果sudo killall mysqld 抛出类似process not found 的东西,请不要担心。
        【解决方案9】:

        它发生在我身上。和

        sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start
        

        不适合我。

        所以,我重新安装 xampp,然后修复它。

        注意:

        重新安装xampp,不会删除mysql数据,不用担心。

        【讨论】:

        • 对我来说,每次 MySQL 无法启动时,此代码行都有效
        • 重新安装 XAMPP 给我带来了更大的问题。无法再访问表格数据
        【解决方案10】:

        有很多答案,但我想我找到了导致它的原因,至少对我而言。看起来如果您让计算机进入睡眠状态(或者它自己进入睡眠状态),当它重新打开时,它会尝试再次打开 mysql 进程。有一次,我查看了我的活动监视器,我有 5 个实例正在运行 - 将它们全部杀死,然后启动 mysql 工作。

        【讨论】:

          【解决方案11】:
          sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start    
          

          这对我有用。

          【讨论】:

          • 错误!服务器退出而不更新 PID 文件 (/Applications/XAMPP/xamppfiles/var/mysql/testingAccounts-Mac.local.pid).. 怎么办
          • @iKrutarth 看看我对 Benshittu 的回答的评论,也许它对你也有帮助
          • 重复答案。此答案的older version 已存在。
          【解决方案12】:

          我成功地在 Monitor Activity 工具中轻松杀死了所有活动的 mysql 进程:

          1) 关闭 XAMPP 控件

          2) 打开监控活动

          3) 为所有进程选择过滤器(默认为我的进程)

          4) 搜索:mysql

          5) 强制退出所有mysql

          6) 重新启动 XAMPP 控件并再次启动 apache

          享受

          【讨论】:

            【解决方案13】:

            从终端尝试这两行

            1. sudo killall mysqld
            2. sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

            【讨论】:

              【解决方案14】:

              这可能是因为您安装的软件或任何其他使用相同端口 3306 的软件。这个 3306 端口被 XAMPP 中的 Mysql 使用。我在 Apache 遇到的类似问题。我正在运行 skype 并尝试运行 XAMPP,但 skype 使用与 Apache 相同的端口,因此无法正常工作。然后我从 Skype 注销然后端口是免费的并且 apache 启动了。因此,您应该在笔记本电脑中查找阻止或使该端口繁忙的软件。通过关闭软件释放该端口,然后运行 ​​XAMPP,它将工作。

              【讨论】:

                【解决方案15】:

                我所做的如下:在XAMPP控制面板中我编辑了MySql配置的my.ini文件并将端口从3306更改为3307,它可以工作,希望对您有所帮助!

                编辑:保存此更改后,请确保服务已关闭,然后重新启动服务。我在安装 MySQL 时遇到了同样的问题,只是端口问题。

                【讨论】:

                  【解决方案16】:

                  我刚才遇到了这个问题。我检查了日志文件,发现它是由服务器未正确关闭引起的。于是我找到了这个http://rivenlinux.info/how-to-recover-innodb-corruption-for-mysql/,并在my.cnf的[mysqld]中添加了一个简单的配置“innodb_force_recovery = 1”。然后问题就解决了。

                  日志文件位于 /Applications/XAMPP/xamppfiles/var/mysql 并根据您的服务器名称命名。只需链接这个 XXX-MacBook-Pro.local.err

                  【讨论】:

                  • 谢谢。这有很大帮助。找到错误日志并看到 innodb 是导致问题的原因。它现在重新启动,但现在无法再访问数据库。所以存在更大的潜在问题:(。我认为这与更新 Mac OSX 有关。这不是第一次。仅重新安装 xampp 也无法修复它。数据库已损坏....
                  【解决方案17】:

                  上述关于更改端口号的所有答案都是在这种情况下解决此问题的最佳方法,因为您需要语音识别软件与 MAMP 共存。但是,您必须记住,更改此端口号将影响您与 MySQL 的所有后续连接(即终端、php 代码、phpmyadmin 等)。因此,建议更改运行语音识别软件的端口。希望这对您有所帮助。

                  :)

                  【讨论】:

                    【解决方案18】:

                    如果您收到此错误

                    .............ERROR! The server quit without updating PID file 
                    

                    试试这个

                    转到 /Applications/XAMPP/xamppfiles/var/mysql/

                    如果没有名为 Your_Username.local.pid

                    的文件

                    Your_Username should replace with your Mac Username

                    用这个名字创建一个文件

                    那就试试

                    sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start    
                    

                    它对我有用

                    【讨论】:

                      【解决方案19】:

                      它有同样的问题,我所做的只是为所有用户(包括系统)和以下文件夹中的所有项目授予只读权限:

                      /Applications/XAMPP/xamppfiles/etc
                      /Applications/XAMPP/xamppfiles/sbin
                      

                      并重新启动 XAMPP 控制并再次启动 mysql 服务器 或

                      sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start   
                      

                      【讨论】:

                        【解决方案20】:

                        我有同样的问题,并在 /Applications/XAMPP/xamppfiles/var/mysql 目录中的 hostname.err 中收到此错误

                        2016-09-06 15:32:45 140735322399488 [注意] 插件“反馈”是 禁用。 2016-09-06 15:32:45 140735322399488 [注意] 启发式崩溃 恢复模式 2016-09-06 15:32:45 140735322399488 [注意] 请 在没有 --tc-heuristic-recover 的情况下重新启动 mysqld 2016-09-06 15:32:45 140735322399488 [错误] 无法初始化 tc 日志 2016-09-06 15:32:45 140735322399488 [错误] 中止

                        2016-09-06 15:32:48 20004 mysqld_safe mysqld 来自 pid 文件 /Applications/XAMPP/xamppfiles/var/mysql/hostname.pid 结束

                        然后我删除了 tc.log,通过 manager-osx 重新启动 mysql 后它工作正常

                        【讨论】:

                        • 删除 tc.log 为我解决了这个问题
                        【解决方案21】:

                        这可能是由于另一个 mysqd 实例已经在您的 mac-book-pro (MacOs-10) 中运行。几乎不可能杀死/ pkill mysqld 或....我多次尝试该路线,但没有成功。最后,以下对我有用:

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

                        等待几分钟,然后检查

                        ps -ef|grep mysqld
                        

                        它应该消失了!

                        【讨论】:

                          【解决方案22】:

                          macOs 高山脉

                          如果 mysql 没有从 manager-oxs 启动并且尝试过直接命令,即

                          sudo /Applications/XAMPP/bin/mysql.server start

                          太 去路径编辑

                          /Applications/XAMPP/xamppfiles/etc/

                          查找文件:

                          我的.cnf

                          编辑它

                          在 [mysqld] 部分下,添加以下行:

                          innodb_force_recovery = 1
                          

                          保存并运行后,或者可以从 manager-osx 完成

                          sudo /Applications/XAMPP/bin/mysql.server start
                          

                          它应该启动mysql。

                          一旦运行,您需要再次运行 编辑

                          我的.cnf

                          归档并删除刚刚添加的行

                          innodb_force_recovery = 1
                          

                          停止并重新启动 mysql。通过命令

                          sudo /Applications/XAMPP/bin/mysql.server start 
                          

                          或 by manager-osx

                          它将正常工作。

                          【讨论】:

                            【解决方案23】:

                            可能你的语音识别软件内部有一个mysql安装程序,当你安装这个软件时,它也安装了mysql并将它添加到服务中,一旦你的系统启动,这个mysql服务就会启动。所以现在你有两个mysql服务器(一个来自语音识别软件,第二个来自XAMPP),这就是为什么杀死前一个进程(mysql服务)可以解决你的问题。但这不是一个永久的解决方案,每次启动机器时都必须重复它。所以更好的是找出那个mysql服务器(服务)并改变它的端口号。或者更改设置,使 mysql 服务在您的机器启动时不启动(但可能是您的语音识别软件无法正常工作)

                            希望对你有帮助。

                            干杯

                            【讨论】:

                              【解决方案24】:

                              您似乎已经通过终止进程找到了解决方法,但请确保检查 MySQL 分区上的可用空间。如果您的日志或数据库文件占用了所有驱动器空间,mysqld 将无法启动。

                              【讨论】:

                                【解决方案25】:

                                重新启动计算机,或使用上面列出的“kill”命令解决问题。至于防止它发生,我发现只要我的电脑进入睡眠状态就会发生这种情况。该端口显然是保留的,然后在唤醒时,mysql 尝试重新连接到该端口,但不能。这也可能是您的问题。

                                【讨论】:

                                  【解决方案26】:

                                  我正在为 OS X Yosemite 10.10.2 运行 XAMPP 5.6.3-0 并两次遇到相同的问题,第一次是小牛队。对于 MySQL 数据库没有开始使用 Manager App 的问题有一堆不同的解决方案,我想确认什么对我有用。始终有效并强制 MySQL 启动的解决方法是打开终端并使用: sudo /Applications/XAMPP/xamppfiles/bin/mysql.server 启动 我打开了 Manager App 并启动​​了 ProFTPD 和 Apache,然后运行了 sudo 命令。

                                  wishap 的另一个建议是找到 /Applications/XAMPP/xamppfiles/etc/my.cnf 文件并将“每个人”的权限更改为只读。

                                  我遇到的另一个问题似乎是许多解决方案的另一个问题,这是在一切启动然后输入 localhost 后出现的问题,这使我进入 xampp 初始屏幕,然后什么也没有。唯一对我有用的,至少,访问 phpMyAdmin 页面是输入 localhost/phpmyadmin

                                  我希望这可以帮助其他人阅读一堆线程以获得答案。

                                  问候, 埃里克

                                  【讨论】:

                                    【解决方案27】:

                                    试试这个,sudo service mysql stop它将停止任何其他mysql服务,然后重新启动xampp

                                    【讨论】:

                                      【解决方案28】:

                                      只需点击 XAMPP MANAGER 中的托管服务器选项卡,现在选择 MySQL 数据库,点击右侧的配置。

                                      将端口从 3306 更改为 3307 即可。

                                      【讨论】:

                                        【解决方案29】:

                                        它有同样的问题,我所做的只是为所有用户和以下文件夹中包含的所有项目授予只读权限:

                                        /Applications/XAMPP/xamppfiles/etc
                                        /Applications/XAMPP/xamppfiles/sbin
                                        

                                        【讨论】:

                                          【解决方案30】:

                                          嗯,有时只有ERROR! 消息显示在终端上的 mysql 评论中。 然后,只需重新安装(覆盖)XAMPP,即可解决。

                                          【讨论】:

                                          • 我也有错误!没有别的了。我使用了这个线程,然后执行了 sudo killall 步骤。我不必重新安装 - osx el capitan
                                          猜你喜欢
                                          • 2013-06-30
                                          • 2012-12-15
                                          • 2015-08-04
                                          • 2015-03-30
                                          • 2015-06-29
                                          • 2020-06-17
                                          • 2013-07-01
                                          • 2019-12-07
                                          • 2011-06-04
                                          相关资源
                                          最近更新 更多