XAMPP - 错误:MySQL意外关闭

cgf*_*cgf 8 mysql xampp

我出于某种原因重新安装了XAMPP并且MySQL无法运行,在控制台中出现以下错误:

01:56:03  [mysql]   Error: MySQL shutdown unexpectedly.
01:56:03  [mysql]   This may be due to a blocked port, missing dependencies, 
01:56:03  [mysql]   improper privileges, a crash, or a shutdown by another method.
01:56:03  [mysql]   Check the "/xampp/mysql/data/mysql_error.log" file
01:56:03  [mysql]   and the Windows Event Viewer for more clues
Run Code Online (Sandbox Code Playgroud)

检查"/xampp/mysql/data/mysql_error.log"文件时,我得到:

130302  1:48:06  InnoDB: Waiting for the background threads to start
130302  1:48:07 InnoDB: 1.1.8 started; log sequence number 1600324627
130302  1:48:07 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
130302  1:48:07 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
130302  1:48:07 [Note] Server socket created on IP: '0.0.0.0'.
130302  1:51:12 [Note] Plugin 'FEDERATED' is disabled.
130302  1:51:12 InnoDB: The InnoDB memory heap is disabled
130302  1:51:12 InnoDB: Mutexes and rw_locks use Windows interlocked functions
130302  1:51:12 InnoDB: Compressed tables use zlib 1.2.3
130302  1:51:12 InnoDB: Initializing buffer pool, size = 16.0M
130302  1:51:12 InnoDB: Completed initialization of buffer pool
130302  1:51:12 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
130302  1:51:12  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
130302  1:51:13  InnoDB: Waiting for the background threads to start
130302  1:51:14 InnoDB: 1.1.8 started; log sequence number 1600324627
130302  1:51:14 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
130302  1:51:14 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
130302  1:51:14 [Note] Server socket created on IP: '0.0.0.0'.
130302  1:56:01 [Note] Plugin 'FEDERATED' is disabled.
130302  1:56:01 InnoDB: The InnoDB memory heap is disabled
130302  1:56:01 InnoDB: Mutexes and rw_locks use Windows interlocked functions
130302  1:56:01 InnoDB: Compressed tables use zlib 1.2.3
130302  1:56:01 InnoDB: Initializing buffer pool, size = 16.0M
130302  1:56:01 InnoDB: Completed initialization of buffer pool
130302  1:56:01 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
130302  1:56:01  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
130302  1:56:02  InnoDB: Waiting for the background threads to start
130302  1:56:03 InnoDB: 1.1.8 started; log sequence number 1600324627
130302  1:56:03 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
130302  1:56:03 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
130302  1:56:03 [Note] Server socket created on IP: '0.0.0.0'.
Run Code Online (Sandbox Code Playgroud)

这只是日志的一部分,完整的日志有点太大了.

救命?

小智 19

就我而言,我做了两件事:

  1. xampp/mysql/backup文件移入xampp/mysql/data
  2. 以管理员身份运行XAMPP

它对我有用:)

  • 不要这样做,你会失去所有的表,我这样做了,现在面临“引擎中不存在表” (14认同)
  • 尽管 MySQL 将重新开始工作,但您将丢失所有数据。一个无用的方法。不要这样做。如果您非常热衷于投票,请首先备份您的备份文件夹。 (3认同)

Ima*_*lah 14

警告!不要删除 ibdata1 文件!

只需按照以下步骤操作即可完成。

  1. 将文件夹重命名C:\xampp\mysql\dataC:\xampp\mysql\data_old(您可以使用任何名称)
  2. 新建一个文件夹C:\xampp\mysql\data
  3. 将驻留C:\xampp\mysql\backup在新C:\xampp\mysql\data文件夹中的内容复制到
  4. 将所有数据库文件夹复制到C:\xampp\mysql\data_oldC:\xampp\mysql\data跳过 mysql、performance_schema 和 phpmyadmin 文件夹C:\xampp\mysql\data_old
  5. 最后复制 ibdata1 文件C:\xampp\mysql\data_old并将其替换到C:\xampp\mysql\data文件夹中
  6. 现在从 XAMPP 控制面板启动 MySQL

一切都完成了,享受吧……

  • Windows 用户的完美答案,谢谢 (3认同)

小智 10

首先,您需要在硬盘中的某处保留以下副本。

C:\xampp\mysql\备份

C:\xampp\mysql\data

在那之后

复制“C:\xampp\mysql\backup”中的所有内容并粘贴并替换
“C:\xampp\mysql\data”

现在您的 mysql 将在 phpmyadmin 中工作,但您的表将显示“在引擎中找不到表”

为此,您必须转到在硬盘中创建的“备份和数据文件夹”的副本,然后在数据文件夹中复制“ibdata1”文件,然后将其替换为“C:\xampp\mysql\data” ”。

现在您的表数据将可用。

  • 最佳答案,谢谢! (4认同)
  • 这解决了这个问题。多谢。 (2认同)
  • 这一定是最好的答案。谢谢老兄。 (2认同)

let*_*eck 7

这对我有用

  1. 退出XAMPP
  2. 剪切C:\ xampp \ mysql \ backup中的所有文件
  3. 粘贴并替换C:\ xampp \ mysql \ data中的文件
  4. 以管理员身份运行XAMPP


rin*_*maz 6

如果skype是opne,请退出skype并尝试

要么

转到你安装的xampp/wamp,搜索httpd.conf.使用textpad/notepad打开该文件,搜索Listen或80,将listen端口更新为8081并保存文件.重启xampp/wamp,启动服务器.


或者
在Skype中按照以下步骤操作 在此输入图像描述