Web架构 - 如何有效地保存和恢复数据库快照

问题描述:

我需要一些建议创建/保存/恢复数据库快照为网站后端。Web架构 - 如何有效地保存和恢复数据库快照

以下是技术细节(但我想答案可能是独立的API):

  • PHP:5.3
  • PHP框架:Kohana的3 *
  • DB:MySQL 5.1中

我的webapp可以比作一个简单的股票管理工具。 DB包含带价格的产品。在某些时候,用户对这些产品执行操作(例如订单)。此时,只有相关项目才生成DB的快照PARTIAL。之后,在主数据库中,产品可能会被删除或其价格可能会发生变化。

我的目标是存储这些快照,然后,使用为完整数据库编写的代码进行恢复,以尽量减少代码开发和复杂性。

由于我的数据库最初是在MySQL中,我打算将部分数据库转储到文本文件中并对其进行压缩。要恢复它,请解压缩并将其重新注入另一个数据库(以不覆盖具有相同名称的属性已更改的项目)。

  1. 这是创建和存储部分数据库的正确方法吗?或者智能设计能更有效地处理?
  2. Kohana特定:如何处理ORM和多个数据库连接?对象只绑定到一个数据库。默认的数据库连接似乎在会话中被指定。不幸的是,一次只能看到一个会话...

谢谢!