0

我希望这对你们中的一个人来说是一个简单的答案。

我们已经在单板计算机上运行 PHP/MySQL,该产品将成为基于 Web 的管理工具。该产品将是一个“设置并忘记它”的应用程序。

我们关注的一个问题(无论它是否有效)是 MySQL 表/数据库损坏。

我们有进程在这个小盒子上持续运行,可以诊断损坏,或捕获 dbase 错误并采取相应措施。

我们通过这些相同的流程定期创建备份。我们的想法是,如果我们感觉到损坏或捕获 dbase 错误,我们将暂时暂停我们的进程并从最近的备份中恢复表。我们希望这将解决腐败问题。

问题是:如果 MySQL 表损坏,我们可以执行备份恢复吗?

我想一个后续问题是我们上面的逻辑是否正确。备份还原会纠正表损坏问题吗?

我知道这听起来很傻,但我们对 MySQL 后端并不熟悉。我们担心的是,如果 dbase(或表)以某种方式损坏,这也会阻碍备份恢复。

你们中的一些人可以权衡一下吗?

非常感谢。

4

4 回答 4

1

是的,它会。请记住,您只有在上次备份之前的数据,因此您将丢失从该时间到损坏时间的所有内容,但这通常最多一天。

备份是备份期间处于任何状态的数据库的副本。如果你用干净的备份恢复损坏的数据库,你会很笨拙。因此,请保留每月备份和过去 7 天的备份。以防万一您的备份之一被冲洗。

于 2009-06-23T13:25:32.413 回答
1

我认为,甚至在您想到这一点之前,您就需要采取措施确保永远不会备份损坏的表。因为如果您恢复备份并且备份本身恰好已损坏,那么您就回到了开始的位置。

你用的是什么存储引擎?

于 2009-06-23T13:28:05.667 回答
1

需要考虑的一件事;根据数据库的结构,从备份中恢复单个表可能会导致引用完整性问题。

于 2009-06-23T13:35:41.473 回答
0

我认为这就是备份的全部意义,不是吗?

此外,如果表已经损坏,那么当您尝试恢复它时可能发生的最坏情况是什么?

我说去吧。

于 2009-06-23T13:23:41.370 回答