0

现在我正在测试数据库中的一些东西。这是一个wordpress数据库。我必须写入和删除并对其进行其他操作。如您所知,它具有索引机制,始终使每个新帖子都继承下一个可能的最高 ID。

请考虑此数据库是已使用数据库的副本。以前写过。所以,我需要确保当我完成测试时,它会是一样的

现在,我唯一的解决方案是进行备份。因此,如果我在计划测试的某些部分结束,我将备份它并在另一个副本上开始下一次测试。

幸运的是,数据库的大小只是很小的一个。所以删除,复制和备份会很容易。但我知道这种数据库测试方式只是部分解决方案。它迫使我创建太多备份副本。如果数据库更大,我不知道该怎么办。这将是一场漫长的测试噩梦。

所以我想知道有没有像回滚一样工作的解决方案。所以它只会锁定数据库并将新条目作为某种缓存。我可以删除它或将其写入数据库。

我使用 mysql 和 phpmyadmin 并使用它来开发一些自定义解决方案。

编辑 ::: 在开发 PHP 解决方案时如何有效地对数据库进行测试?

4

3 回答 3

1

删除记录后,插入新记录时,如果将 id 设置为所需的数字,而不是将其留空,它应该再次填充该索引。

于 2010-04-20T17:02:27.177 回答
1

如果您的文件系统支持可写快照 - LVM、ZFS、Veritas 等 - 您可以获取整个数据库分区的即时副本,将其挂载到另一个地方,启动使用快照的新 MYSQL 实例,执行测试,删除您的快照 - 所有这些都不会干扰您的副本。

快照只需要存储测试期间更改的数据量,因此可能只需要几 GB。

于 2010-04-21T09:22:09.263 回答
1

帖子编号是自动增量字段吗?如果没有,请(暂时)侵入 WordPress 并查找存储新帖子的代码。在保存之前为什么不添加一个常量,例如 1000 到帖子 ID 号。完成测试后,只需删除大于常量的 id 编号。

于 2010-04-22T07:53:43.763 回答