MySQL数据库无法在XAMPP Manager-osx中启动

时间:2014-01-21 19:13:36

标签: php mysql macos xampp

我大约一个月前下载了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

36 个答案:

答案 0 :(得分:150)

这应该有效:
sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

答案 1 :(得分:66)

最小指南

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> uid id来自$ id uid=... $ vim /Applications/XAMPP/xamppfiles/etc/my.cnf ... 命令。

1

答案 2 :(得分:49)

如果这些命令不适合您:

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. 关闭您的控制面板并重新启动它。
  7. 你现在好了。

答案 3 :(得分:29)

检查你的/ 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 start

一切都好了。

然后是最后一步:

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

innodb_force_recovery = 1

再次重启mysql。否则所有表格都是只读的

答案 4 :(得分:19)

我已经尝试了所有这些方法,但没有运气(当然包括重启)但是当我

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

我得到:

Starting MySQL
. ERROR! 

不完全是最有用的信息!

答案 5 :(得分:9)

对我而言,以下方法有效:将权限更改为“只读”#39;为了每个人&#39;到文件/Applications/XAMPP/xamppfiles/etc/my.cnf。然后从XAMPP管理器启动MySQL。

答案 6 :(得分:6)

  1. 关闭XAMPP控件
  2. sudo killall mysqld
  3. sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

答案 7 :(得分:6)

我首先无法使用此处发布的命令来杀死mysql守护程序。所以我记得我的linux时间并做了以下事情:

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

答案 8 :(得分:5)

它发生在我身上。和

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

不适合我。

  

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

注意:

  

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

答案 9 :(得分:4)

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

答案 10 :(得分:4)

从终端

尝试这两行
  1. sudo killall mysqld
  2. sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

答案 11 :(得分:4)

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

这对我有用。

答案 12 :(得分:4)

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

1)关闭XAMPP控件

2)打开监控活动

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

4)搜索:mysql

5)强制退出所有mysql

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

享受

答案 13 :(得分:3)

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

  1. send
  2. sudo killall mysqld sudo

答案 14 :(得分:3)

由于您安装的软件或者可能是使用相同端口3306的任何其他软件,可能会导致此错误。此1306端口由XAMPP中的Mysql使用。我遇到类似的Apache问题。我正在运行skype并尝试运行XAMPP但是skype使用与Apache相同的端口,因此它无法运行。然后我从Skype注销然后端口是免费的,apache开始了。因此,您应该在笔记本电脑中查找阻止或忙于此端口的软件。通过关闭软件释放该端口,然后运行XAMPP,它将起作用。

答案 15 :(得分:3)

我做的是以下内容:在XAMPP控制面板中,我编辑了MySql配置的my.ini文件,并将端口从3306更改为3307,并且它有效,希望它有所帮助!

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

答案 16 :(得分:2)

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

日志文件位于/ Applications / XAMPP / xamppfiles / var / mysql,它命名为accroding到您的服务器名称。只需链接此XXX-MacBook-Pro.local.err

即可

答案 17 :(得分:1)

如果您收到此错误

.............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    

它为我工作

答案 18 :(得分:1)

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

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

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

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

答案 19 :(得分:1)

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

:)

答案 20 :(得分:0)

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

答案 21 :(得分:0)

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

我希望它会对你有所帮助。

干杯

答案 22 :(得分:0)

  

macOs High Sierra

如果mysql尚未从管理器开始,并且尝试了直接命令,即

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

比 转到路径编辑

  

/ Applications / XAMPP / xamppfiles / etc /

查找文件:

  

my.cnf

编辑

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

innodb_force_recovery = 1

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

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

它应该启动mysql。

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

  

my.cnf

文件并删除刚添加的行

innodb_force_recovery = 1

停止并再次启动mysql。通过命令

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

或 通过manager-osx

它将运行正常。

答案 23 :(得分:0)

这可能是因为mysqd的另一个实例已经在你的mac-book-pro(MacOs-10)中运行了。它几乎不可能杀死/杀死mysqld或....我尝试了很多次这条路线,没有任何成功。最后,以下内容对我有用:

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

等几分钟,然后检查

ps -ef|grep mysqld

它应该消失了!

答案 24 :(得分:0)

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

答案 25 :(得分:0)

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

  

2016-09-06 15:32:45 140735322399488 [注意]插件'FEEDBACK'是   禁用。 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来自pid文件的mysqld_safe mysqld   /Applications/XAMPP/xamppfiles/var/mysql/hostname.pid已结束

然后我删除了tc.log,通过manager-osx

重新启动mysql后工作正常

答案 26 :(得分:0)

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

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

答案 27 :(得分:0)

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

答案 28 :(得分:0)

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

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

我遇到的另一个问题似乎是许多解决方案的另一个问题是在所有内容启动然后进入localhost之后的问题,这会将我带到xampp启动画面然后什么都没有。对我来说唯一有用的东西,至少是访问phpMyAdmin页面是输入localhost / phpmyadmin

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

此致 埃里克

答案 29 :(得分:0)

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

答案 30 :(得分:0)

只需点击XAMPP MANAGER中的Managed Servers标签,现在选择MySQL Database,点击右侧的configure。

将端口从3306更改为3307,它将起作用。

答案 31 :(得分:-1)

或许在重新安装或复制文件db之后表innodb错误尝试修复tbl innodb,如果表不能修复尝试删除db或表

xamppfiles / var / mysql / your db

xamppfiles / var / mysql / your db / your table

更改权限文件夹以打开文件夹数据库

删除备份ur文件夹数据库之前

答案 32 :(得分:-1)

在尝试了所有可能的选项后,下面的技巧对我有用:

  1. 导航到/ Applications / XAMPP / xamppfiles / etc /并打开文件my.conf
  2. 搜索

    &#34; #MySQL服务器&#34;

    的[mysqld]

    user = mysql

    端口= 3308

  3. 并更改端口号。

    1. 再次启动mysql数据库。

答案 33 :(得分:-1)

在Mac上,我检查了mysql错误日志文件:

/Applications/XAMPP/xamppfiles/var/mysql/MyPCName.local.err

我找到了

InnoDB: Error: could not open single-table tablespace file ./some_db_name/some_table_name.ibd

删除.ibd文件然后启动MySql后,它就开始了。

答案 34 :(得分:-1)

检查&#34; / Applications / XAMPP / xamppfiles / var / mysql&#34;文件的所有者。

如果您看到不同的用户和组而不是&#34; _mysql&#34;。

  

sudo chown -R _mysql:_mysql mysql

答案 35 :(得分:-1)

这是因为防火墙设置。

  1. 转到系统偏好设置 - &gt;安全和隐私
  2. 点击防火墙 - &gt;防火墙选项
  3. 如果您已选中阻止所有传入连接,则取消选中
  4. 检查自动允许签名软件接收传入连接,点击锁定保存设置
  5. 打开xampp,转到管理服务器,点击全部启动,系统将提示您接受或拒绝mysql和ProFTPD的传入连接。 6.接受连接