2009-10-20 73 views

回答

1

快照是另一个数据库的只读副本,在某个时间点完成。对快照进行写入快照所使用的文件时,对原始数据库的任何更改都会导致数据的版本。因此,会涉及到性能问题,但它可以非常有用地知道您的数据库在过去的某个时刻的样子(当您告诉创建快照时)。

绝对值得注意的是,快照首次创建时不包含自己的数据,因为它可以引用原始数据库,至少在原始数据库更改之前。

0

快照首次创建时,它是一个将所有查询(快照为只读)委托给原始数据库的空壳。

由于对原始数据库进行了更改,所涉及的页面被复制到快照中。此时对快照的查询将在逻辑数据库上执行,该逻辑数据库是将快照中的页面分层到原始数据库中的页面的结果。

结果是快照看起来是在创建快照的同时创建的原始数据库的完整副本。

这可能有用的一种情况是部署更改。如果出现问题,快照可能是一种非常廉价的保险形式。假设在部署期间只修改了原始数据库中的一部分页面,则在还原期间只需要将该部分页面从快照复制回原始数据库。