Mysql中innodb类型的,断电造成的数据丢失如何恢复

millerrch 2012-01-10 03:01:04
Linux系统下mysql数据库中,innodb类型的表,断电后之前的数据都没了,现在只能查到恢复供电之后的数据,请问如何恢复之前的数据?

如果需要看日志的话怎么看?如何操作啊?
...全文
479 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kikiboy1987 2012-02-09
  • 打赏
  • 举报
回复
个人感觉跟linux的磁盘缓存有关
linux中数据操作一般都会在内存中操作,隔一段时间才会同步回硬盘,在这段时间内如果直接断电就会导致在内存中的数据没写回硬盘。执行sync可以手动同步回硬盘,可以尝试写一个crontab来保持高频同步,不过还是保证电源稳定来的更有效...
coky20009 2012-02-07
  • 打赏
  • 举报
回复
恩,楼上很有道理,看看你的my.cnf配置是否在运行的时候进行了改动。可能是IBDATA的一些相关信息做了改动例如自增长大小。导致重启的时没有加载IBDATA成功从而导致数据丢失。

ACMAIN_CHM 2012-01-10
  • 打赏
  • 举报
回复
如果找不到数据了,并且你已经做了一些操作,则很难恢复了。 只能重新找到备份文件进行恢复。 估计是断电时导致操作系统文件损坏。而你的MYSQL在重启时无法正常打开IBDATA文件后,重新创建了新文件。

检查一下你的MYSQL错误日志。
rucypli 2012-01-10
  • 打赏
  • 举报
回复
看错误日志有什么信息没
millerrch 2012-01-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 rucypli 的回复:]
innodb类型的表断电后数据不会丢,除非表损坏,表损坏后新数据怎么进来的
[/Quote]

额 不知道,可现在就是这么个情况··· 现在查看数据只有恢复供电之后的数据了
rucypli 2012-01-10
  • 打赏
  • 举报
回复
innodb类型的表断电后数据不会丢,除非表损坏,表损坏后新数据怎么进来的

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧