如果我们在Oracle中禁用表空间的“重做日志”,它们会影响Hibernate的事务吗? 这些是表空间级别上Oracle EM中的选项:
启用日志记录 是 生成重做日志以创建表,索引和分区以及后续插入。可采 没有 重做日志条目较小,上述操作未记录且无法恢复。
此外,Oracle的提交/回滚功能是否依赖于这些重做日志?
答案 0 :(得分:8)
重做日志与事务无关。它们用于在发生崩溃或操作系统文件损坏时恢复数据库。如果您没有重做日志记录,那么如果数据库出现任何问题,您的用户将丢失自上次备份以来的所有工作。
通常我们只想在批量数据加载之前禁用对表空间的日志记录。该负载之后的第一个操作是进行备份,然后重新启用日志记录。不登录交易系统是个坏主意。
答案 1 :(得分:7)
重做日志是Oracle RDBMS的集成部分,您可以在少数特殊情况下禁用它们:
如果您为其中一个操作禁用了重做日志的生成,则在此之后您将无法完全恢复数据库(即:您应该在完成这些批处理作业后立即备份数据库)。
您无法为简单交易禁用重做生成。您不会想要,因为它们允许数据库在崩溃的实例(在线重做日志,即使您在NOARCHIVELOG中)后恢复,并允许在崩溃的磁盘后恢复介质(归档重做日志,仅在ARCHIVELOG中)