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

nit*_*ous 86 php mysql xampp macos

我大约一个月前下载了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
Run Code Online (Sandbox Code Playgroud)

我的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).
Run Code Online (Sandbox Code Playgroud)

请帮我.我不知道该怎么做.

更新:

在浏览了一下互联网后,我发现了一个用户与MAMP类似的问题,另一个用户建议杀死mysql进程,这意味着什么.这可以解决我的问题吗?

更新2:

我找到了问题的答案,但我还没有回答.所以这是答案:

1)打开终端并输入

sudo su
Run Code Online (Sandbox Code Playgroud)

然后输入你的密码

2)然后输入

ps aux | grep mysql
Run Code Online (Sandbox Code Playgroud)

(只需复制并粘贴)

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

4)使用杀死进程

kill -9 {process id}
Run Code Online (Sandbox Code Playgroud)

这应该是这样的:kill -9 739

5)在manager-osx中重启MySQL

小智 153

这应该工作:
sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start

  • 对我不起作用:`启动MySQL ........................................ .................................................. ...........错误!服务器退出而不更新PID文件(/Applications/XAMPP/xamppfiles/var/mysql/gmac.local.pid). (7认同)
  • @GeoffreyHale和其他遇到此问题的人:查看你的日志(/Applications/XAMPP/xamppfiles/var/mysql/YOURNAME.err),你可能会发现导致错误的原因.我的是`[ERROR] InnoDB:无法锁定/ Applications/XAMPP/xamppfiles/var/mysql/ibdata1,错误:35`还有`[注意] InnoDB:检查你是否还有另一个使用相同InnoDB的mysqld进程数据或日志文件.哎!那是对的!杀死mysqld进程,键入benshittu的命令,它应该工作. (4认同)
  • 当manager-osx无法启动localhost上的mySQL数据库时,这种方法有效 (2认同)
  • 太棒了,这个有用!好奇的是,为什么manager-osx启动mySQL,如果我要sudo /Applications/XAMPP/xamppfiles/bin/mysql.server启动?或者可以更正manager-osx脚本? (2认同)

Geo*_*ale 69

最小指南

1. sudo killall mysqld

2. manager-osx>启动mysql


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

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

谷歌的错误......


例子:

错误:

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

我的解决方案

/Applications/XAMPP/xamppfiles/etc/my.cnf变化user = <uid>s表示<uid>uidid命令.

$ id
uid=...

$ vim /Applications/XAMPP/xamppfiles/etc/my.cnf
...
Run Code Online (Sandbox Code Playgroud)

  • 绝对帮助了我.谢谢. (5认同)

mon*_*eki 56

如果这些命令不适合您:

sudo killall mysqld
sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start
Run Code Online (Sandbox Code Playgroud)

试试这个:

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

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

你现在很高兴.

  • 我尝试了同样的事情,但没有为新的xampp 7.2.2工作:收到以下错误消息(我有问题被阻止所以我不能在stackoverflow上问新问题)`启动MySQL .2018-03-06 11:21:32 3610 mysqld_safe记录到'/Applications/XAMPP/xamppfiles/var/mysql/Bharats-iMac.local.err'.2018-03-06 11:21:32 3610 mysqld_safe用/ Applications/XAMPP/xamppfiles/var/mysql中的数据库启动mysqld守护进程错误! (3认同)

leu*_*gxd 30

检查你的/ 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.否则所有表格都是只读的


Dyl*_*ler 19

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

sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start
Run Code Online (Sandbox Code Playgroud)

我得到:

Starting MySQL
. ERROR! 
Run Code Online (Sandbox Code Playgroud)

不完全是最有用的信息!


小智 9

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


小智 6

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

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


小智 6

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

  • 为我工作!– 如果 `sudo killall mysqld` 抛出类似 `process not found` 之类的内容,请不要担心。 (2认同)

小智 6

它发生在我身上.和

sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start
Run Code Online (Sandbox Code Playgroud)

不适合我.

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

注意:

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


小智 6

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

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


小智 3

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