mysql数据库,只有data下面的文件,如何恢复?

regalechinajava 发布于 2014/07/11 16:33
阅读 2K+
收藏 1
一台服务器上的mysql数据库出问题了,把data文件夹下的数据库拷到另一台mysql数据库data目录下,可以识别数据库,打不开表,请问怎么办?
加载中
0
都市网达
都市网达
你的数据库版本是一样的吗
0
都市网达
都市网达
如果你直接拷贝到另一台机器的版本要高一些,就需要

mysql_upgrade -u root -p -h127.0.0.1 升级一下,可以删除或重名ib_logfile0,ib_logfile1文件,然后看一下错误日志,一般会出现pid无法新建,或者是什么socket错误。


0
r
regalechinajava

谢谢回复!

数据库大版本一样,都是5.5。

没有ib_logfile0,ib_logfile1文件可以恢复吗?

都市网达
都市网达
回复 @都市网达 : 如果是权限问题,可以这样chown -R mysql:mysql /data/ ,读写权限可以配置为755
都市网达
都市网达
ib_logfile是日志文件,也就是innodb_log_file_size文件的配置大小,可以没有,启动数据库时会自动生成,可以没有,ibdata1文件有吗,这个文件很重要,如果没有可能就无法启动,也可以调整innodb_force_recovery的参数来恢复。
0
qycms_cn
qycms_cn
如果 linux,请把文件的权限设为mysql用户可读写
0
悦澜殇
悦澜殇
我在Linux下也遇到过,我是直接跳过登陆,库列表备份出来再重新建库,就可以了,
0
欣儿
欣儿
没遇到过,用的时好像直接复制后就可以自己识别。可能是接触的还不多,没发现异常吧
0
r
regalechinajava
问题已解决,先用老的备份sql生成库,再用新的替换旧的。
都市网达
都市网达
这种方法对于小数据库还可以,如果有几百个G,就不行了,速度太慢。
返回顶部
顶部