本地mysql5.6服务启动错误1067问题记录

本地mysql5.6服务启动错误1067问题记录

本地的mysql服务突然就停止了,重新启动的时候提示[错误1067:进程意外终止]的错误。
排查过程:
1.打开任务管理器,在服务中找到mysql的服务
在这里插入图片描述
2.找到你的my.ini文件的位置,我的是在C:\ProgramData\MySQL\MySQL Server 5.6\my.ini
在这里插入图片描述
3.打开my.ini,找到datadir属性,然后再进到这个目录下发现了错误的日志文件
在这里插入图片描述
在这里插入图片描述
4.打开日志发现报错InnoDB: Error: Attempt to open a tablespace previously opened,大概意思是说尝试打开以前已经打开的表空间。
在这里插入图片描述
继续往下看,它告诉你有三种解决方案
在这里插入图片描述

(1)如果这个文件(指的是actor.ibd吗???)有权限问题并且mysqld不能打开它,你应该修改该文件的权限
(2)如果这张表不再需要或者你可以从备份中恢复回来,那么你可以删除.idb文件 ,随后InnoDB引擎会做一个普通的应急恢复并且会忽略这张表
(3)如果是文件系统或磁盘损坏,并且你不能删掉.idb文件,你可以在my.ini中设置innodb_force_recovery大于0,这样会强制InnoDB引擎继续做应急恢复的操作

5.不太懂innodb_force_recovery的作用,百度一下,然后再这位大佬的文章中解释的比较清楚 https://blog.csdn.net/edyf123/article/details/81026155

在这里插入图片描述
原来这样方案3只是治标不治本,可能会引发其他问题!!!

解决方案:
(1)先把innodb_force_recovery设置成1,让服务可以启动。
(2)然后用navicat把数据备份好(网上说要备份ib_logfile0、ib_logfile1、ibdata1 这三个文件),然后把这三个文件删掉。
在这里插入图片描述
(3)停止mysql服务,再把innodb_force_recovery设置为0或者去掉这个属性。
(4)重启mysql服务,恢复数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值