首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以仅从.ibd文件重新创建表模式?

是否可以仅从.ibd文件重新创建表模式?
EN

Stack Overflow用户
提问于 2014-09-22 08:03:51
回答 1查看 1.2K关注 0票数 0

是否有任何方法只从.ibd文件重新创建mysql数据库?如果有人能够发布如何创建.frm或获取"create“语句,甚至完全恢复数据库的方法,那就太好了。

问题是,我已经将percona的xtrabackup用于mysql备份,但不幸的是,这个工具似乎只备份数据,不包括数据库的模式。我认为,他们应该在文件中更清楚地提到这一点。所以现在我只有一堆.ibd文件,需要完全恢复数据库。数据库中的所有表都使用InnoDB引擎。

这是我用来做备份的命令:

代码语言:javascript
复制
xtrabackup --backup --datadir=/var/lib/mysql/ --target-dir=/backup/

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2014-09-22 08:12:34

根据mysql文档

代码语言:javascript
复制
LOCK TABLES tblname WRITE;
ALTER TABLE tbl DISCARD TABLESPACE;
ALTER TABLE tbl IMPORT TABLESPACE;
UNLOCK TABLES;

请注意以下各点:

  • ibd文件中不能有未提交的事务。
  • .ibd文件中没有未合并的插入缓冲区项。
  • 清除了.ibd文件中所有被删除标记的索引记录。
  • mysqld已经将.ibd文件的所有修改页面从缓冲池刷新到该文件。

我希望这个摘要和文档能帮助你解决问题。如果您有进一步的问题,请留言。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25969281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档