一、环境介绍

1、mysql主从复制中的从服务器

2、Windows Server 2008 R2 Enterprise系统 64位操作系统

3、MySQL数据库版本为5.6.34

二、报错详情

从服务器内存使用率已快接近99%,计划将从服务器上的mysql关闭并关机进行硬件升级。后面因需要备份数据,则没有进行硬件升级,重启服务器之后,想要从系统服务启动mysql时,报错见下图:

mysql 错误1067进程意外终止 mysql服务1067进程意外终止_mysql 错误1067进程意外终止

mysql 错误1067进程意外终止 mysql服务1067进程意外终止_mysql 错误1067进程意外终止_02

三、处理过程

从网上找了很多办法都没有解决,最后根据网上的方法去查看windows日志

在计算机管理界面依次找到【诊断】->【事件查看器】->【服务器角色】->【管理事件】或者【诊断】->【事件查看器】->【windows日志】->【应用程序】。点击【应用程序】。

 

mysql 错误1067进程意外终止 mysql服务1067进程意外终止_重启_03

 切记,不能单单看一个错误日志,连续的错误日志都需要查看,不然有可能找不到真正的错误原因,导致找不到问题的根源。我就是因为疏忽,在这边也没找到关键信息,

最后在mysql安装目录找到data文件夹下扩展名是.err那个文件,打开查看错误信息

mysql 错误1067进程意外终止 mysql服务1067进程意外终止_mysql 错误1067进程意外终止_04

发现报错信息为:

[ERROR] InnoDB: .\ibdata1 can't be opened in read-write mode

[ERROR] InnoDB: The system tablespace must be writable!

受到https://blog.csdn.net/samdy_chan/article/details/54579506这篇博客的启发。解决办法如下

四、解决方案

1、打开任务管理器终止mysqld进程;

2、打开mysql安装目录的data文件夹,重命名这2个文件:ib_logfile0 和 ib_logfile1

3、重启mysql服务

五、拓展知识

mysql的innodb中事务日志ib_logfile
事务日志或称redo日志,在mysql中默认以ib_logfile0,ib_logfile1名称存在,可以手工修改参数,调节
开启几组日志来服务于当前mysql数据库,mysql采用顺序,循环写方式,每开启一个事务时,
会把一些相关信息记录事务日志中(记录对数据文件数据修改的物理位置或叫做偏移量);
作用:在系统崩溃重启时,作事务重做;在系统正常时,每次checkpoint时间点,会将之前写入事务
应用到数据文件中。