如果我在计算机的硬盘上备份了完整的文件系统,我可以使用恢复它并期望Oracle数据库一致吗? 备份软件使用VSS备份硬盘上的所有文件。
DB状态将与您突然closures服务器的状态相同。 因此,Oracle需要执行事务日志检查并回滚所有未被取消的事务。 所以,这个状态可以被描述为“最终一致”或“修复后一致”。 这可能不是您所期望的备份。 执行备份的首选方法是使用Oracle备份工具,它们将提供100%一致的备份。
嗯,它看起来像甲骨文有一个VSS作家服务(更多细节在这里 )。 当执行备份过程时,VSS Writer服务会通过备份工具指示刷新对磁盘的更改。 因此,VSS Writers使用VSS备份工具帮助获得一致的备份。 您应该只检查是否安装并启用了Oracle VSS Writer服务。
数据库实例是否正在运行?
如果是这样,数据库很可能是一个不一致的状态(即正在进行的事务需要被回滚)。 在这种情况下,亚历克斯的build议是正确的。 您将能够进行恢复到备份点。
如果数据库正确closures,那么你将有一个一致的副本。 这意味着你可以恢复它,如果你有VSS备份后的所有归档日志文件,你将能够将数据库转发到这些归档日志文件覆盖的任何点。
如果使用Oracle RMAN备份工具,则可以在不closures数据库的情况下进行一致性备份,并通过保留存档日志来恢复到任何时间点。
正在进行的交易不能由任何工具,甚至Oracle的备份。 备份一笔零碎的交易是没有意义的,考虑一下。 你希望数据库处于“良好”的状态,那就是在备份开始之前所有事务都完成了。 所以用vss的备份是好的,因为数据是作为一个快照(文件读取时不能改变)
我使用NetApp快照来即时备份数据库,然后我可以在几分钟内克隆并在另一个系统上启动。 这是程序:
ALTER DATABASE BEGIN BACKUP;
快照数据目录
ALTER DATABASE END BACKUP; ALTER SYSTEM ARCHIVE LOG CURRENT;
快照存档日志目录。
这可确保快照具有使数据库保持最新状态所需的归档日志。 我在一个非常活跃的数据库上使用了这个数百次而没有恢复问题。