当我打开XAMPP并单击启动MySQL按钮时,它给了我一个错误。 我刚才启动了它,但现在它不工作了。

12:19:12 PM [mysql] Attempting to start MySQL app... 12:19:12 PM [mysql] Status change detected: running 12:19:13 PM [mysql] Status change detected: stopped 12:19:13 PM [mysql] Error: MySQL shutdown unexpectedly. 12:19:13 PM [mysql] This may be due to a blocked port, missing dependencies, 12:19:13 PM [mysql] improper privileges, a crash, or a shutdown by another method 12:19:13 PM [mysql] Press the Logs button to view error logs and check 12:19:13 PM [mysql] the Windows Event Viewer for more clues 12:19:13 PM [mysql] If you need more help, copy and post this 12:19:13 PM [mysql] entire log window on the forums

以下是错误日志的内容:

2013-08-02 12:19:12 4536 [Note] Plugin 'FEDERATED' is disabled. 2013-08-02 12:19:12 f64 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator. 2013-08-02 12:19:12 4536 [Note] InnoDB: The InnoDB memory heap is disabled 2013-08-02 12:19:12 4536 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions 2013-08-02 12:19:12 4536 [Note] InnoDB: Compressed tables use zlib 1.2.3 2013-08-02 12:19:12 4536 [Note] InnoDB: Not using CPU crc32 instructions 2013-08-02 12:19:12 4536 [Note] InnoDB: Initializing buffer pool, size = 16.0M 2013-08-02 12:19:12 4536 [Note] InnoDB: Completed initialization of buffer pool 2013-08-02 12:19:12 4536 [Note] InnoDB: Highest supported file format is Barracuda. 2013-08-02 12:19:12 4536 [Note] InnoDB: The log sequence numbers 0 and 0 in ibdata files do not match the log sequence number 1616798 in the ib_logfiles! 2013-08-02 12:19:12 4536 [Note] InnoDB: Database was not shutdown normally! 2013-08-02 12:19:12 4536 [Note] InnoDB: Starting crash recovery. 2013-08-02 12:19:12 4536 [Note] InnoDB: Reading tablespace information from the .ibd files...

最重要的错误信息在这里:

2013-08-02 12:19:12 4536 [ERROR] InnoDB: 试图打开先前打开的表空间。 以前的表空间mysql/innodb_table_stats在filepath: .\mysql\innodb_table_stats.ibd使用的是空间ID: 1。 在文件路径:.\xat\payments.ibd下无法打开空间ID: 1的表空间xat/payments

日志的其余部分:

InnoDB: Error: could not open single-table tablespace file .\xat\payments.ibd InnoDB: We do not continue the crash recovery, because the table may become InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it. InnoDB: To fix the problem and start mysqld: InnoDB: 1) If there is a permission problem in the file and mysqld cannot InnoDB: open the file, you should modify the permissions. InnoDB: 2) If the table is not needed, or you can restore it from a backup, InnoDB: then you can remove the .ibd file, and InnoDB will do a normal InnoDB: crash recovery and ignore that table. InnoDB: 3) If the file system or the disk is broken, and you cannot remove InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf InnoDB: and force InnoDB to continue crash recovery here.

这些错误的原因是什么?我该如何纠正它们?


当前回答

从C:\xampp\mysql创建一个备份你的mysql文件夹。 然后转到C:\xampp\mysql\backup复制所有文件并粘贴到C:\xampp\mysql\data中。

然后从你的旧备份文件夹中找到ibdata1文件,你可以在C:\xampp\mysql\data中找到它。复制此文件并粘贴到C:\xampp\mysql\data中。

现在重新启动xampp,它应该工作了。

其他回答

我解决了类似的MySQL错误&我认为这个答案将帮助您修复相同类型的MySQL数据库错误。

解决方案:

进入mysql数据库的“data”目录。 我安装XAMPP在D:驱动器上的计算机和mysql的“数据”目录位置我的计算机是“D:\ XAMPP \mysql\data\”。你可能有不同的位置。

取备份MySQL“data”文件夹

首先,你应该创建一个备份的“数据”文件夹使用 任何压缩软件。 给出一个像“data_backup.zip”这样的名称或任何您希望的压缩类型。 我使用winrar压缩软件压缩备份mysql“data”文件夹。

重命名data文件夹

重命名" data "文件夹为" data-oldfiles "。将数据目录重命名为任何新的目录名称是非常重要的。

创建一个新的“data”文件夹

创建一个新文件夹,命名为data 为了解决这个问题,我们需要在mysql数据库中创建一个新的“data”目录。

从“备份”文件夹复制内容

进入“备份”文件夹,复制所有文件。 将备份文件夹中的文件粘贴到数据文件夹中 现在从XAMPP启动MySQL数据库。 您的MySQL数据库将正常启动,不会显示任何错误。

传输所有MySQL项目的数据库、数据文件和日志文件

If you have many database which was used for various projects, then you have to transfer all database from “data-oldfiles” folder to “data” folder. Copy all databases from the data-old files and paste to the data folder. Now you have to copy the data file “ibdata1” & all log files “ib_logfile0, ib_logfile1 ” from data-old files folder to the data folder. If you have many id_logiles then copied all of them. Now Start MySQL from XAMPP. Go to phpMyAdmin to check all databases are available & working. Now start your any website project from localhost to check the MySQL database.

问题解决了!!

现在,您将看到问题已经解决,错误消息“error: MySQL shutdown unexpected .”不会再出现。 如果你对这个问题有任何疑问,请在评论区提出任何问题。

你可以在下面的链接上阅读详细的教程: 错误:MySQL关机意外-解决方案在5个简单的步骤

你也可以观看视频教程来解决这个问题:

错误:MySQL异常关闭

尝试以下解决方案来解决这个问题。在执行此过程之前,将数据文件夹C:\xampp\mysql\data重命名为old_data。 然后在SQL文件夹中创建一个名为data的新文件夹。 将备份C:\xampp\mysql\backup文件夹中的所有文件和文件夹复制到data文件夹中。 在最后一步中,从old_data文件夹复制ibdata1文件和test文件夹,并将其放入data文件夹中。 现在运行程序并享受吧!

我也有同样的问题。溶液是杀灭过程 查找端口(3306)的PID

netstat -a -n -o | find "3306"

你会看到你需要的一切。

0.0.0.0:3306           0.0.0.0:0              LISTENING       8120   TCP    
0.0.0.0:33060          0.0.0.0:0              LISTENING       8120   TCP    
[::]:3306              [::]:0                 LISTENING  8120   TCP    
[::]:33060             [::]:0                 LISTENING  8120

PID为8120

执行如下命令

taskkill /PID 8120 /F

重新启动MySQL。会没事的。快乐的绳索。

下面是解决这个问题的方法:

打开C:\xampp\mysql\data 您将看到一个名为mysql/data的文件夹 将该文件夹从mysql/data重命名为mysql/data_not_useful任何你想给的名字。 创建一个名为mysql/data的新文件夹。 复制mysql/backup的所有文件,粘贴mysql/data。 现在转到mysql/data_not_useful并从那里复制文件ibdata1。 然后粘贴到mysql/data(你必须替换文件)。 重新启动xampp服务器。 现在运行你的mysql服务器。

10秒内解决

进入xampp文件夹中的mySql文件夹 重命名数据文件夹为data-old 创建新文件夹,命名为data 复制备份文件夹的所有内容到新的数据文件夹…

你可以出发了