Think before you speak, read before you think.

debian电脑损坏后数据和数据库恢复小记

by

in

那台电脑是用来练手和模拟论坛的

前几天有一晚被新手弄了ubuntu的源强制更新了,然后第二天校区停电

这台电脑又破

开始用u盘和cdrom,lan各种启动都试了,无果。要不就是到检测硬件时卡住,要不就是无法识别,其实我应该想到的,肯定是硬盘的引导区出了问题。

今天我拿来易驱线,把老的IDE接上,用ext2explore.exe打开,当时分区比较随意,只有一个 / 和一个 /home ,今天体会到把不同的目录挂到不同分区的好处了,要是/挂了,那我一切玩完。

接下来把硬盘所有的分区在windows下面直接删掉了,重新挂回到老机器,用cdrom放入debian光盘,启动,顺利进入安装介面,接下来分区和安装好,ssh,简单安全措施,上网什么的搞好。然后开始搞这些数据。

安装svn,将svnroot里的文件传过去,启动服务到对应目录,然后svn能用了。装好nginx,传配置和web目录里的文件回去,最重要的就是搞mysql数据库恢复了,以前我博里的lnmp安装好,开始数据库的恢复。

发现每个数据库里面有三种文件,*.frm *.MYD *.MYI,这些直接拷到/var/lib/mysq里,先执行

service mysql stop

覆盖过去,其实我在想这种方式有可能不对,就先把现在新安的/var/lib/mysql里的备份了一下,然后传过去

#service mysql start
 Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!

果然不行,幸亏备份了一下,再把备份的覆盖回去,并没有删掉不冲突的文件,还是failed

后来发现是目录权限不对,不管其他,先改目录权限

# chown -Rf mysql:mysql /var/lib/mysql/
# chmod 700 -Rf /var/lib/mysql/

然后发现可以了

#service mysql start
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..

按以上的提示说明有一些表还是有一些问题,可能是由停电引起的。

再把以前各种php mysql等配置文件转移回去就好了

系统版本一样,各种服务,路径都一样,所以这次恢复不是很难,也没有多少错误碰到。

:)EOT


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *