我希望对某个数据库进行长期备份,并且我想知道应用程序是否可以在备份期间访问(只读?读/写?)它。
如果可以进行读/写访问,那么如何实现一致性?备份中可能只包含备份开始时可用的快照?
或者备份期间数据库将无法运行?
答案1
是的,数据库可以在备份期间使用。
备份过程的工作方式基本上是这样的。
当执行备份数据库命令时,服务器会触发检查点。然后启动数据库备份,不再发出检查点。当从数据库文件备份数据时,将备份事务日志。当日志备份完成后,将发出另一个检查点。
备份始终保持一致,并且截至备份作业结束时都是最新的。