跳转到内容

Oracle 和 DB2 的比较和兼容性/进程模型/一致性/Oracle

来自 Wikibooks,开放世界的开放书籍

ANALYZE 命令,在本节中优化器部分之前见过,是 Oracle 用于验证表、索引、簇或物化视图完整性的命令。在这种情况下,您将 ANALYZE 语句与 VALIDATE STRUCTURE 选项一起使用。如果结构损坏,您将收到错误消息。

例如,索引验证确认索引中的每个条目都指向关联表的正确行。要更正损坏的索引、表或簇,您可以删除并重新创建它。如果物化视图损坏,您应该进行刷新并查看是否可以解决问题。如果不行,您需要删除并重新创建它。

您可以使用 CASCADE 选项验证对象及其所有依赖对象。由于 CASCADE 资源密集,您可以使用 FAST 更快地进行验证。FAST 使用优化的检查算法检查损坏。FAST 不报告有关损坏的详细信息,因此,如果您发现损坏,您需要使用不带 FAST 的 CASCADE 选项来定位它。您也可以在 SQL 中在线验证,但存在性能开销。

dbverify 允许外部分析数据库块以查看实际块结构是否与预期块结构相符。如果对打开的数据库运行 dbverify,它可能会报告虚假损坏(DBWR 进程可能会干扰 dbverify)。

检查 Oracle 数据库中损坏的另一种方法是导出它(整个数据库或选定对象)。如果您只对损坏感兴趣,您可以将数据库导出到一个虚拟文件。导出中发现的错误将指示数据库中是否存在损坏/一致性问题。

华夏公益教科书