怎样恢复data目录中的mysql数据库?

服务器上的mysql 5.0 被他人意外重新安装了,但是我哪个数据库kidd没有备份,进入查看之后,看到data哪个目录还在,并且data下有个kidd目录,我把这个data\kidd\目录赶紧copy出来,请问,我用这个目录还能恢复吗? 连同数据库表结构和数据一起都能恢复吗?怎样恢复?
看了一下各位的回答,感觉各位说的那种情况是仅仅恢复数据,但是我说的是我连数据库表结构的备份都没有,怎么办?也就是说我现在连建库都建不了,不知道能不能从这个目录中搞出来.

刚刚搞定了,其实很简单,就是重新create了一个同名的数据库,然后把这个文件夹覆盖过去,我当时试了一下不行,后来刚好有个操作系统的更新需要重新启动服务器,结果重新启动之后就好了,原来还要重新启动,这个没想到.意外发现的,本来有点沮丧,结果吃饭之后回来看到好了.哈哈

MySQL数据恢复过程
从另一台机上把MySQL数据库的mysql文件夹拷贝到本地机上,目的是恢复本地机对数据的访问和操作。经过如下几种情况的操作。

1. 在本地重装MySQL(安装目录D:\Program Files\MySQL\MySQL Server 5.0),直接把mysql文件夹拷贝至D:\Program Files\MySQL\MySQL Server 5.0\。结果,失败:数据库连接错误。

2. 卸载后重装MySQL,将D:\Program Files\MySQL\MySQL Server 5.0\下的数据备份,只把mysql\data文件夹全部内容拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data下。结果,失败:数据库连接错误。将备份的数据还完覆盖。结果,失败,还是连接不上数据库。

3. 卸载后重装MySQL,将mysql\data文件夹里的cf1,last文件夹(这两个是原来MySQL里的数据库)拷贝进D:\Program Files\MySQL\MySQL Server 5.0\data。连接成功,在Navicat for MySQL里看到数据库cf1和last,但是不能访问,因为数据全为零。明白了原来data里以数据库命名的文件存储的是数据库的表结构,不是元数据。下一步,把data文件夹里的ibdata1文件(3.4G大,明显存储了元数据)拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data里,代替原来的ibdata1文件。重启电脑,打开Navicat for MySQL,连接成功,数据可以访问操作。

至此,操作终于成功。其实当初在那台机上把数据导出来,而不是现在直接把文件夹mysql复制过来会更容易恢复。但那台机已经重装了系统,也就是说MySQL失效了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-02-10
如果是windows版本的话,如下。。。
把所有的mysql卸载
然后把mysql文件夹弄走(卸载不会清掉它,需手动,一般在C:\ProgramData下)
重新安装mysql(我用的是mysql-installer-community-5.7.13.0程序包)
如果数据库启动了先关闭它(因为版本,关闭是(net stop mysql57--在cmd中);启动是(net start mysql57--在cmd中))
然后把以前的数据库文件(自己需要的)(在Data文件夹下的,数据库名即文件夹名)复制到,新的数据库Data文件夹下(那些自带的数据库别动),
把新的Data下的那五个配置文件替换为以前老的文件(就是这五个文件auto.cnf,ib_buffer_pool,ib_logfile0,ib_logfile1,ibdata1)
重新启动数据库即可。

祝你好运。。。
第2个回答  2008-11-13
能。你按开始、程序、一键恢复精灵就可以恢复了。。
第3个回答  2008-11-13
参考这篇文章

http://blog.163.com/kwzong@126/blog/static/4719260520086244915955/

大概意思就是 把数据库 kidd 和元数据 复制过去就ok了本回答被提问者采纳
第4个回答  2008-11-13
可以查下具体恢复mysql数据库文件的具体过程,
呵呵,希望能有帮助,^_^