繁体   English   中英

Windows / MySQL 5.5。 / 在异常 0xc0000005 上启动时崩溃

[英]Windows / MySQL 5.5. / Crash on startup on exeption 0xc0000005

我有 Windows 2016 标准操作系统,安装了 MySQL 5.5.33.0。 今天早上发现mysql服务器没有运行,无法开机。 当我尝试打开它时,它立即崩溃,并且事件查看器中只有异常信息0xc0000005。 我什至无法运行 mysqlcheck,因为它在 mysqld 未运行时不起作用。

我将非常感谢任何建议。

我能够在 MySQL 设置中启用日志记录和设置路径。 日志中有很多带有此文本的条目(数字更改):

210107 10:28:21 InnoDB: Error: page 33382 log sequence number 114951961648 
InnoDB: is in the future! Current system log sequence number 111386529682. 
InnoDB: Your database may be corrupt or you may have copied the InnoDB 
InnoDB: tablespace but not the InnoDB log files. 
See InnoDB: dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
InnoDB: for more information.
210107 10:32:33  InnoDB: Error: Insert buffer insert fails; page free 43, dtuple size 50 
                 InnoDB: Cannot insert index record DATA TUPLE: 2 fields;  
                    0: len 40; hex 436f6d70757465722050726573732020202020202020202020202020202020202020202020202020; 
                asc Computer Press                          ;;  
                    1: len 4; hex 800070da; asc   p ;;  
                InnoDB: The table where this index record belongs 
                InnoDB: is now probably corrupt. Please run CHECK TABLE on 
                InnoDB: that table. 
                InnoDB: space 0, page 109621, zip_size 0, bitmap bits 1

进度更新:我设法以 innodb_force_recovery = 3 启动 MySQL,它甚至运行了一段时间。 如果我运行 mysqlcheck.exe --all-databases --auto-repair,它会在某些此类表中报告损坏:

Warning: InnoDB: Index 'ix_linear_pole' contains 1683314 entries, should be 1683294.

但是,检查并没有运行到最后,对于一个特定的表,整个 mysql 服务器再次崩溃。

更新:我发现错误在 InnoDB 缓冲区中的加载命令中,但我不知道如何删除它。 每次我打开服务器时,缓冲区中的一个命令都会使其崩溃。

经过几个小时的研究,我发现 MySQL 无法加载 InnoDB Buffer。 最简单的方法是将命令添加到 my.ini

innodb_force_recovery = 4

但是,数据库仅针对 SHOW 数据启动。 使用mysqldump,我备份了没有索引的数据。 然后我从服务器上删除了数据库,我也从系统中删除了日志和数据库数据(C:\ProgramData\...\MySQL\data\ibdata 和 iblog0 和 iblog1)。 然后我停止了 MySQL 并删除了 innodb_force_recovery。 然后数据库运行但没有数据。 我使用正常恢复上传了原始数据并创建了索引。

从那一刻起,一切正常,没有问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM