Apache在80和443端口上正常运行,但MySQL无法启动。当我按下启动按钮时,会出现以下信息:
尝试启动MySQL服务...
然后弹出一个窗口询问是否允许此操作,我想要允许。但之后什么也没有发生。我可以按想要的次数,但结果始终相同。
我该怎么办?
我遇到了一个问题,因为我不小心将XAMPP安装到c:\windows\program files (x86)
,导致Windows权限问题。
安装说明指出不要在那里安装,但我误解成了要在那里安装。
我卸载并重新安装到c:\xampp
,然后它就可以正常工作了。
C:\xampp-portable-win32-7.2.3-0-VC15\xampp
下,然后取出了 xampp 目录并将其重命名为 C:\xampp2
(因为我还有一个旧版本),最后只有当我将旧版本重命名为其他名称并将这个新版本简单地放在 C:\xampp
下时,它才能正常工作,就像你所做的和我通常也这样做。 - Modular停止 XAMPP 后,进入配置文件,将 MySQL 的端口从 3306 改为 3308 并保存。现在启动 SQL……享受吧!
services.msc
查找 MySql 并将属性更改为禁用。Xampp
的控制面板中,通过左侧的复选框卸载 MySql,并通过单击同一复选框中的安装按钮再次安装。Windows 10用户:
我之前也遇到了这个问题。经过一番调查,找到了解决方法。在此之前,我遇到了另一个问题,即端口3306被占用。所以我发现端口3306被另一个程序占用了。具体来说,是我尝试学习的一个JDBC程序,在尝试使用JDBC之前,我已经安装了XAMPP。所以我删除了整个文件,然后就出现了和你一样的情况。问题在于重新安装MySQL时,我的"ImagePath"(注册表变量)发生了改变。简而言之,XAMPP不知道你的mysqld.exe在哪里,或者该文件不在你告诉它的位置上。以下是修复方法:
酷源:
https://superuser.com/questions/222238/how-to-change-path-to-executable-for-a-windows-service/252850
https://dev.mysql.com/doc/mysql-windows-excerpt/5.7/en/mysql-installation-windows-path.html
首先,请确保未运行 'mysqld.exe',如果有,请结束它。(进入 任务管理器 > 进程选项卡 > 右键点击 'mysqld.exe' > 结束任务)
通过 运行 (按下 'Windows + R') > 服务.msc 或在 XAMPP 控制面板上,单击 '服务' 按钮 打开您的 services.msc。找到 'MySQL' 服务,右键单击并运行它。
仅适用于Windows 我已通过以下步骤解决了mysql启动问题
步骤:
打开CMD并复制粘贴命令 netstat -ano | findstr 3306
如果命令返回结果,则端口3306处于活动状态
现在我们想要停止正在使用的端口(3306),因此现在打开PowerShell并粘贴命令
Stop-Process -Id (Get-NetTCPConnection -LocalPort 3306).OwningProcess -Force
其中3306是活动端口。现在端口将不再处于活动状态
从Xampp启动Mysql服务,现在可以正常工作
注意:这仅适用于端口3306处于活动状态的情况。如果您在第1步中没有得到任何结果,则该方法不适用。可能会存在其他错误
对于其他端口,请将3306
更改为"所需端口"
打开CMD和Powershell的方法
只需停止Xampp中的My sql 15分钟,15分钟后重新启动Mysql。如果My sql正在运行但端口未显示在Xampp中,则单击Config> my.ini编辑此文件并更改端口号3306> 3307并保存并重新启动xampp……
C:\xampp\data\mysql_error.log
文件,并查找包含[ERROR]
的行。
最后一个错误行是:
... [ERROR] InnoDB: File (unknown): 'close' returned OS error 206. Cannot continue operation
重要提示:如果您遇到不同的错误,请搜索谷歌(您可能会找到解决方法)。
在搜索上述错误时,我发现了Apache Friends Support Forum上的这个帖子,它带领我找到了解决方法:
C:\xampp\mysql\bin\my.ini
文件,并在[mysqld]
部分的末尾添加以下行(在包含## UTF 8 Settings
的行之前):innodb_flush_method=normal
Can`t find messagefile 'D:\xampp\mysql\share\errmsg.sys'