可以使用CREATE TABLE AS SELECT语句创建表和索引。你也可以指定数据库使用NOLOGGING选项创建它们。当作为NOLOGGING创建表或索引时,数据库不为操作生成redo日志记录。因此,你不能恢复使用NOLOGGING创建的对象,即使运行在ARCHIVELOG模式。
注:如果你不能承受丢失使用NOLOGGING创建的表或索引,那么在创建不可恢复的表或索引之后制作一个备份。
注意当你执行介质时,某些表或索引是正常创建的而其它使用NOLOGGING选项来创建,NOLOGGING对象会被RECOVER操作标记为逻辑损坏。任何尝试访问不可恢复的对象返回一个ORA-01578错误信息。删除NOLOGGING对象和如果需要重建它们。
因为使用NOLOGGING选项创建表和使用LOGGING选项在表上创建索引是可能的,索引不会在执行介质恢复之后被标记为逻辑损坏。表是不可恢复的(因此在恢复之后标记为损坏),不管如何,因此索引指向损坏块。索引必须被删除,如果必要表和索引必须被重建。
来源:《Oracle Database Backup and Recovery User’s Guide,19c》

使用NOLOGGING选项创建的表和索引在Oracle中不会记录redo日志,导致无法恢复。如果不能承受数据丢失,应在创建后立即备份。介质恢复后,NOLOGGING对象可能标记为逻辑损坏,需要删除并重建。即使索引使用LOGGING创建,表的损坏仍会影响索引的完整性。
954

被折叠的 条评论
为什么被折叠?



