MySQL利用frm和idb文件进行数据恢复 源MySQL现状: 版本:5.6.* 存储引擎:innodb存储引擎 要恢复数据库:skill 重点要恢复表:slot_value 已有的文件: 备份了所有物理文件(含ibdata1和数据库skill整个目录) 友情提示:最好找个自己的开发机,自己额外搭一套MySQL数据库,以免因为共用mysql数据库而影响其他人。 1. 搭建MySQL,如果这步骤有疑问,出门左转有yum搭建各种版本数据库的操作步骤:http://www.cnblogs.com/zhzhang/p/7765040.html 2. 备份刚搭建的MySQL的数据(因为新搭建的数据库,可以忽略此步骤) 3. 将之前备份了的物理文件ibdata1文件和skill文件夹放到刚搭建的这个MySQL数据目录中(数据目录位置在/etc/my.conf中的datadir=/var/lib/mysql) 4. 将ibdata1和skill整个目录,更改为所属主为mysql 5. 将skill目录chmod 760 skill 6. 将skill目录内部所有文件 chmod 660 * 7. service mysqld restart 重启数据库 【重启之前务必删除数据目录下的ib_logfile0等文件(数据库超大比如200G以上时,会出问题,不知道什么原因)】 8. 登录此数据库,找到skill数据库,找到slot_value表,数据恢复。 9. 大功告成 参考自: http://blog.csdn.net/hongchangfirst/article/details/51323965
注:
拷贝文件的时候不仅拷贝skill文件夹及其中数据,还需要拷贝ibdata1文件
注意文件和目录的所属主及权限;
未尽事宜,还请大侠们指点。