我必须从.myd和.frm文件还原MySQL数据库。 ii不知道从哪里开始,我尝试在保留文件权限的同时将它们复制,但我无效我还需要采取哪些其他步骤?

我感觉它与ib_logfile0,ib_logfile1和ib_data文件有关。但是不知道该怎么办。

有帮助吗?

解决方案

您不应该通过处理RAW MYSQL文件来进行备份。以这种方式使用损坏的数据库在很容易的情况下很容易。考虑当您开始将文件复制到备份介质时会发生什么 - 副本将花费非零的时间,在此期间,数据库可能会在各个地方(包括您已经复制的零件)编写新数据。现在,您正在复制一个修改后的文件,旧数据和新数据的混合。此修改后的副本几乎可以保证被损坏。

您应该改用MySqlDump或mysqlhotcopy,这可以保证一致的备份。

但是,由于您的数据库相对安静,并且您设法获得了良好的干净备份副本,因此您需要还原的文件取决于要还原的表格。 InnoDB将其所有数据存储在 ib* 文件,无论数据库/表名称如何。 Myisam使用根据数据库/表名称命名的目录中的文件。

将备份副本复制到正确的位置后,您必须重新启动MySQL,因为它仍将访问文件的原始副本。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top