关于Mysql的备份和还原

昨天升级的时候觉得转储sql文件太慢了,就直接备份了data文件夹。然后还原的时候就出了一点状况。

直接把备份好的data文件夹直接复制回去其实是没问题的,只要保留着.MYI .MYD ,frm这三个文件,数据就不会丢失。但是发现其中有几个表只有.frm文件,看了下是InnoDB类型的。直接扔回去表根本打不开。

在线上操作数据库总觉得不太安全,我把文件下到win上,把本地数据库清理光,把名字叫ib_logfile和ibdata的文件放到data文件夹(这个不在表文件夹里面,在data的目录),再把frm覆盖。回到mysql看一眼,还是打不开,提示表不存在。

想着不存在那我先自己创建一个吧,再把数据库清理掉,按照原来的名字和数据结构创建好表,再覆盖掉,结果居然就没问题了……导出一下SQL文件,上传到服务器上,OK,数据又回来了。

事实证明以后还是老实的备份好。

发布者

《关于Mysql的备份和还原》有2个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注