------------------如何根据data文件恢复mysql innodb库?-------------------

horizonlyhw 2015-01-06 06:21:23
请教各位,mysql引擎用的是innodb,现在data文件全在,如何恢复到另一个干净的环境里呢?

网上的各种替换的方式 都已经试过了,可还是看不到数据,提示table不存在。

先谢了!
...全文
2708 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lckfk 2017-09-04
  • 打赏
  • 举报
回复
引用 8 楼 horizonlyhw 的回复:
解决了,确实可以通过拷贝data文件夹进行恢复。 1. 删掉现有的data文件夹(先备份一份) 2. 将需要恢复的data文件夹放到对应位置 3. 修改my.cnf,加入innodb_force_recovery=4或者6 4. 直接启动,注意err文件的报错 5. 有可能报一些权限上的错误,逐条修改即可 6. 启动之后直接mysqldump,赶紧恢复数据 7. 成功
按照这个方法解决了,谢谢!大家注意没有mysql版本号和data权限! chmod data chown -R mysql:mysql data
shu930721 2017-02-20
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
ibdata1 ib_logfile0 ib_logfile1 还有其它数据库文件目录,全部复制到新的DATA目录下即可。
按照这个方法解决了 ,可行
qq_33397697 2016-09-12
  • 打赏
  • 举报
回复
挖一下 我按照楼主的方法试了一下 为什么现在有的数据恢复了 有的数据表 打开时依旧显示 找不到该表
qq_33542050 2016-01-08
  • 打赏
  • 举报
回复
求告知如何使用mysqldump 恢复数据啊?
horizonlyhw 2015-01-07
  • 打赏
  • 举报
回复
解决了,确实可以通过拷贝data文件夹进行恢复。 1. 删掉现有的data文件夹(先备份一份) 2. 将需要恢复的data文件夹放到对应位置 3. 修改my.cnf,加入innodb_force_recovery=4或者6 4. 直接启动,注意err文件的报错 5. 有可能报一些权限上的错误,逐条修改即可 6. 启动之后直接mysqldump,赶紧恢复数据 7. 成功
zhu19774279 2015-01-07
  • 打赏
  • 举报
回复
实在不行用第三方工具呢,xtrabackup恢复innodb不错 Linux的话,是不是文件权限的问题。我以前把var/lib/mysql这个目录删了重建再重新授权,数据库就无法恢复;但是如果把var/lib/mysql这个文件夹保留,只是清空这个文件夹,可以正常恢复启动
horizonlyhw 2015-01-07
  • 打赏
  • 举报
回复
引用 5 楼 benluobobo 的回复:
找不到表的原因是ibdata1中的数据不对
怎么才能让他是对的呢? 我是从别的机器上拷过来了,就想用另一台机器把数据给恢复一下。
benluobo 2015-01-07
  • 打赏
  • 举报
回复
找不到表的原因是ibdata1中的数据不对
horizonlyhw 2015-01-06
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
ibdata1 ib_logfile0 ib_logfile1 还有其它数据库文件目录,全部复制到新的DATA目录下即可。
我试过 把ib_logfile * 删掉重建 就可以启动了。 但是 无论是是否把.ibd 文件拷贝过去 都会出现找不到表的错误
horizonlyhw 2015-01-06
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
ibdata1 ib_logfile0 ib_logfile1 还有其它数据库文件目录,全部复制到新的DATA目录下即可。
这样 我这启动就已经起不来了
horizonlyhw 2015-01-06
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
ibdata1 ib_logfile0 ib_logfile1 还有其它数据库文件目录,全部复制到新的DATA目录下即可。
.frm .ibd 都要放到对应的目录下面么?
ACMAIN_CHM 2015-01-06
  • 打赏
  • 举报
回复
ibdata1 ib_logfile0 ib_logfile1 还有其它数据库文件目录,全部复制到新的DATA目录下即可。
  大家好,我是录制课程的老师,课程已经上线课堂,欢迎大家试听,感谢同学们的支持。在你们的学习中我会全力助你提升MySQL技能,助你冲击更高年薪。支持课程答疑,支持一对一答疑服务,由课程老师直接回答。    MySQL凭借着它不错的性能、不错的稳定性、数据的安全性常年稳居行业老二宝座。    越来越多的DBA和后端同学在工作中少不了和MySQL打交道,也经常会产生这样的疑问:    为什么我写的sql语句性能这么低?  为什么明明我建了索引却没有用到索引?  为什么突然我的数据就成了乱码?  为什么我备份的文件在主恢复,数据无法同步到从?  为什么我的数据数据不多,却占了很多的空间?  生产中我应该选择哪种隔离级别?  生产中都在使用innodb存储引擎,我却对它一无所知?  我应该怎么规划缓冲池才能让数据性能更高?  为什么我做表数据迁移这么慢?  为什么我写的sql会造成那么多的锁冲突、死锁?  为什么我不能将数据恢复到任意时间点?  为什么我不能解决公司主从复制架构中的故障?  吧啦吧啦一大堆问题……    在面试中MySQL的一些知识更成为躲不过的问题,比如b+tree索引、MVCC、隔离级别的实现、锁的使用,主从复制,MySQL性能优化、事务两阶段提交等等都成为了面试考题重灾区。    我的课程就是从实际工作来,从问题出发,带着问题来学习MySQL,想解决问题就要学习新的知识,大家跟紧老司机,MySQL的面纱就会慢慢摘下。

56,677

社区成员

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

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