天问

mysql掉电恢复

笔记本用了5年了,这几天总是担心电脑硬盘出问题,后面便买了一个新硬盘,ghost一下系统,这天复制一个一堆文件夹到新硬盘,出现一个问题:文件夹不存在,为此动用了系统的磁盘检查修复功能,结果问题解决了。。

还是担心硬盘会不知不觉挂掉,为此执行了一个磁盘整理 ,系统弹框说D盘在使用,需要停止程序再整理,我看没什么程序在使用D盘(忘了mysql位置在D盘),这下好了,磁盘整理好了,数据库倒是启动不了,研究发现是:

BaiduHi_2016-4-23_15-48-54

step1:这三个文件损坏了,把这三个文件删掉吧,结果倒是启动了数据库,但是打开表,里面都是空!!!!表在,表结构不在了,表数据显示不出来。。。。。。。

step2:查找方法,如下,my.ini添加如下参数跳过修复:

BaiduHi_2016-4-23_15-51-53

 

结果数据库倒是打开了,里面的数据都在,但是大部分显示为0行,这说明索引没了。。说明数据库还是有问题。这个时候明智之举是导出数据库,然后再一个个导入。。但是我却嫌这个比较烦,数据库比较大,导出很慢。。。我一直在找有没更好办法。。

把原来磁盘复制的三个文件覆盖过去,发现mysql直接启动不了,后面一直都无法启动。。。。。。。。。。。。。

无果,为此,只好这样解决了:文件diff。

BaiduHi_2016-4-23_15-59-6

导出导入太费劲,原来数据库有用,直接替换差异的文件,启动就ok了。。。上图可以发现,其实所有mysql就是data下不一样。。。。

而data下又只有mysql和部分表,以及上面三个文件不一样,替换这些就好了。。。。。。。到此结束。。。

 

 

博客地址:http://blog.yoqi.me/?p=144
扫我捐助哦
喜欢 0

这篇文章还没有评论

发表评论