我有一个带有测试数据的 MySQL 数据库。我一直在修改这个数据库中的例程和触发器。我有一个新的 .tar 文件,其中包含与生产数据相同的数据库的 *.frm、*.myd、*.myi、*.trn 和 *.trg 文件。我只想从 tar 文件中获取实际数据并将其移动到我现有的数据库中。我可以简单地将 *.myd 和 *.myi 文件从 tar 文件移动到我的数据库的当前文件夹而不破坏架构吗?
最佳答案
是的,您应该能够做到这一点。 frm、myd 和 myi 是 MyISAM 表,您可以复制和移动它们而不会损坏任何东西。虽然,从技术上讲,您应该在执行此操作时关闭数据库。如果这不是一个选项,请确保在复制任何内容之前运行“刷新表”。
将这些复制到 mysql 数据目录后,请确保权限正确。然后你应该可以在mysql中看到它们。正如我所说,您可以在 mysql 运行时执行此操作,但我不推荐这样做。
您不能对 Innodb 表(即 .ibd 扩展名)执行此操作。
关于MySQL .frm/.myd/.myi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9384119/